DHCP Option33&121特性的应用
04989 徐俊
在RFC2131中,对DHCP(Dynamic Host Configuration Protocol)是这样描述的:DHCP可以给网络内主机提供配置参数。它由两部分组成:一种是通过DHCP服务器给主机下发配置参数的协议,另一种是给主机分配网络地址的机制。
通常,在一般企业组网中,我们用到后者的功能居多,即通过DHCP为网络内主机动态分配IP地址。其实,DHCP协议本身能够通过它的Option选项来扩展了很多实用的功能。
DHCP正是通过这些Option选项来携带丰富的参数下发给客户端。有了DHCP丰富的扩展功能,那么路由器不仅可以通过路由协议来获得路由,同样可以使用DHCP协议来获得路由。下面介绍几个跟路由相关的DHCP Option。
Option 3(Router Option):该option会定义一系列路由IP地址(下一条地址)。Option最小长度位4 octets。Option 3路由通常被Client端学习为缺省路由。Code Len Address 1 Address 2 +-----+-----+-----+-----+-----+-----+-----+-----+-- | 3 | n | a1 | a2 | a3 | a4 | a1 | a2 | ... +-----+-----+-----+-----+-----+-----+-----+-----+--Option 33(Static Route Option):该Option定义了一系列静态路由,可以下发到Client并学习到路由表中。Option中携带的路由由一系列IP地址对组成。第一个地址为目的地址,第二个地址为下一跳地址。Option段的最小长度为8 octets,而且必须为8的倍数。
Code Len Destination 1 Router 1 +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ | 33 | n | d1 | d2 | d3 | d4 | r1 | r2 | r3 | r4 | +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ Destination 2 Router 2 +-----+-----+-----+-----+-----+-----+-----+-----+--- | d1 | d2 | d3 | d4 | r1 | r2 | r3 | r4 | ... +-----+-----+-----+-----+-----+-----+-----+-----+---Option33中假定路由的子网掩码由网络地址数来决定,都是以自然掩码的方式。所以通过Option33下发和学习到的路由都是自然掩码的分类路由。
注:目前我司MSR设备Option33特性不仅支持自然掩码的路由的下发,而且还支持主机路由即32位掩码路由的下发。
Option121(Classless Route Option):由于下发自然掩码的路由在实际应用中有一定的限制,所以Option121应运而生。该Option可以定义一个或多个静态路由,每一条路由由目的描述符和路由IP地址(下一跳地址)组成。
Code Len Destination 1 Router 1 +-----+-----+-----+-----+-----+-----+-----+-----+-----+ | 121 | n | d1 | … | dN | r1 | r2 | r3 | r4 | +-----+-----+-----+-----+-----+-----+-----+-----+-----+ Destination 2 Router 2 +-----+-----+-----+-----+-----+-----+-----+-----+--- | d1 | … | dN | r1 | r2 | r3 | r4 | ... +-----+-----+-----+-----+-----+-----+-----+-----+---目的描述符由IP地址和掩码长度组成。表示如下:网络地址 子网掩码 目的描述符 0 0 0 10.0.0.0 255.0.0.0 8.10 10.0.0.0 255.255.255.0 24.10.0.0 10.17.0.0 255.255.0.0 16.10.17 10.27.129.0 255.255.255.0 24.10.27.129 10.229.0.128 255.255.255.128 25.10.229.0.128 10.198.122.47 255.255.255.255 32.10.198.122.47同时,协议中也强调,Option121选项的优先级要比Option33高。也就是说,当DHCP Client收到DHCP的报文中同时含有Option33和Option121选项时,会只处理Option121中所携带的路由,而忽略Option33。
实际配置举例:
路由器A为DHCP Server向路由器B(DHCP Client)下发一条目的网段为10.10.1.0/24,下一跳为10.10.1.1的静态路由和一条目的地址为10.10.2.5/32下一跳为10.10.5.1的主机路由。
OPTION 121:
[RouterA] dhcp server ip-pool 0
[RouterA-dhcp-pool-0] network 10.1.1.0 mask 255.255.255.0
[RouterA-dhcp-pool-0] option 121 hex 180A0A01 0A0A0101
[RouterA-dhcp-pool-0] option 121 hex 200A0A02 050A0A05 01
[RouterA-dhcp-pool-0] dns-list 10.1.1.2
[RouterA-dhcp-pool-0] quit
[RouterB] interface ethernet 1/1
[RouterB-Ethernet1/1] ip address dhcp-alloc
最后DHCP Client学习到的静态路由为
10.10.1.0/24 DHCP 70 0 10.10.1.1
10.10.2.5/32 DHCP 70 0 10.10.5.1
OPTION 33:
[RouterA] dhcp server ip-pool 0
[RouterA-dhcp-pool-0] network 10.1.1.0 mask 255.255.255.0
[RouterA-dhcp-pool-0] option 33 ip 10.10.1.0 10.10.1.1
[RouterA-dhcp-pool-0] option 33 ip 10.10.2.5 10.10.5.1
[RouterA-dhcp-pool-0] dns-list 10.1.1.2
[RouterA-dhcp-pool-0] quit
[RouterB] interface ethernet 1/1
[RouterB-Ethernet1/1] ip address dhcp-alloc
最后,DHCP client学习到的静态路由为
10.0.0.0/8 DHCP 70 0 10.10.1.1
10.10.2.5/32 DHCP 70 0 10.10.5.1
通过display dhcp client verbose 可以查看相应接口下学习到的具体DHCP路由条目,按DHCP服务器上配置的顺序由上往下排列。 目前我司MSR设备最大支持8条Option33&121路由。
总之,在网络中使用DHCP来向Client下发路由表有个显而易见的好处就是增强了网络传输的有效性,利用了网络中本来就需要进行传递的消息来传递路由。
本文只是结合自己对项目中用到的几个DHCP Option选项的了解,粗略的介绍了下几个跟路由相关的DHCP Option。如有不正确的地方,欢迎指正。感兴趣的同志,还请深入研究相关RFC文档。
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作