Tho*_*ler 12 networking dhcp tcpdump isc-dhcpd
我正在尝试在我的笔记本电脑上调试 DHCP(我正在使用dhcping
并dhcdump
查看 DHCP 服务器发回的内容)。以下是我的/etc/dhcp/dhclient.conf
.
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
domain-name-servers, interface-mtu,
rfc3442-classless-static-routes;
Run Code Online (Sandbox Code Playgroud)
我想,我知道所有这些选项的含义,除了rfc3442-classless-static-routes
. 另外,我rfc3442-classless-static-routes
在 DHCP 回复中没有看到任何与此相关的内容。
它的含义是rfc3442-classless-static-routes
什么,我会在什么情况下使用它?
(文档没有任何意义)
gar*_*Red 21
最初的 DHCP 规范(RFC 2131和2132)定义了一个选项 (33),允许 DHCP 服务的管理员在需要时向客户端发布静态路由。
不幸的是,这种原始设计如今存在缺陷,因为它假设了很少使用的有类网络地址。
该rfc3442-classless-static-routes
选项允许您改用无类网络地址(或 CIDR)。
CIDR 需要明确声明子网掩码,但原始 DHCP 选项 33 没有空间用于此。因此,此选项(如 RFC 3442 中定义)仅启用更新的替代 DHCP 选项(选项 121),该选项使用 CIDR 表示法定义静态路由。
基本上,如果您需要使用 DHCP 向您的设备发布静态路由,并且这些静态路由使用 CIDR,那么您需要启用此选项。
如果您已将网络拆分为多个较小的网络,并且需要在不使用众多可用动态路由协议之一的情况下通知每个路由器流量如何从一个路由器传输到另一个路由器,则可以使用静态路由。您基本上设置了每个路由器,并带有“到达网络 abcd,通过 fghi 发送流量”的语句。
如果您在路由器中设置的路由是有类的,则不需要启用此选项。但是,如果路由是 CIDR,那么您将需要启用此选项。幸运的是,许多家庭/咖啡馆网络使用192.168.0.0
子网为255.255.255.0
(或/24
)的网络,这是真正的 C 类网络,因此您可以避免此选项。
另一方面,一些家庭/咖啡馆网络在网络上运行10.0.0.0
。默认情况下,这是 A 类网络。10.0.x.0
例如,如果您将其分成许多子网,那么这些都将是 CIDR 网络,这意味着您需要启用此选项。
以上仅适用于您还需要通过 DHCP向您的主机发布此路由信息的情况。是否需要向主机发布这些静态路由信息取决于您的网络设计。我敢猜测基本的家庭/咖啡馆网络不需要它,因为静态路由通常是在路由器上定义的。
您上面的配置只是将一个新选项(有许多dhclient
已经理解的预定义选项)定义为选项 121,它由一个 8 位无符号整数数组组成。如果在 DHCP 服务器上设置了此选项,则它将客户端配置为请求此选项。
如果 DHCP 服务器返回此选项的值,则dhclient
退出挂钩脚本 ( /etc/dhclient/dhclient-exit-hooks.d/rfc3442-classless-routes
) 会读取该值并相应地配置路由表。
归档时间: |
|
查看次数: |
16255 次 |
最近记录: |