DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
中国移动江苏公司无锡分公司网络部
2010年10月
中国移动江苏公司无锡分公司网络部
第 1 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
目录
一、研究背景 ............................................. 3 二、网络建设方案 ......................................... 3 2.1 组网需求 ......................................... 3 2.2 建设思路 ......................................... 3 三、技术实现 ............................................. 4 3.1 Option 82功能介绍 ................................ 5 3.2 Option 82报文结构 ................................. 6 3.3 Option 82工作原理 ................................ 7 四、组网及配置步骤 ....................................... 9 4.1 DHCP Snooping设备的配置 ........................... 9 4.2 DHCP Server设备的配置 ............................ 10 4.3 其它注意事项 ..................................... 13 4.4 结果验证 ......................................... 13 五、总结 ................................................ 14
中国移动江苏公司无锡分公司网络部
第 2 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
一、研究背景
无锡物联网研究院位于无锡国际科技园双子楼B座17和18层,17层是办公区,主要有学术交流区域和办公区域,学术交流区域只需要上外网,办公区域需要上OA办公网,而18层是研发区实验室需要与北京集团公司总部的实验室内网互联。物联网研究院网络的安全问题也比较受到重视,使网络管理员比以往更加需要在加强网络安全和便于使用之间找到一个平衡点。我们认为在具备802.1x认证的硬件条件下,引入Option 82构建一个权限分配清晰的物联网研究院内部网络是一项可行的措施。因此无锡分公司开展了DHCP及option82安全机制的应用、测试和研究。
二、网络建设方案
2.1 组网需求
无锡物联网研究院的办公区域包括三个小组,group1交流区、group2办公区和group3研发区,独立地分布在三个不同的区域中。通过DHCP server统一管理IP地址,为不同的区域分配不同范围的地址。学术交流区域只需要上外网,办公区域需要上OA办公网,而18层是研发区实验室只需要与北京集团公司总部的实验室内网互联。
2.2 建设思路
在DHCP snooping设备上启动Option 82功能。
配置Option 82的子选项内容,使不同小组的用户携带不同的Option 82信息。可以通过用户自定义Circuit ID子选项内容的方式来实现。
在DHCP server上配置IP地址分配策略,使得DHCP server可以根据Option 82为DHCP client分配合适的IP地址。
具体规划如下:
DHCP server为办公室设备分配192.168.10.0/24网段的地址,有效期为12
中国移动江苏公司无锡分公司网络部
第 3 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
小时,并指定DNS和WINS服务器地址分别为192.168.100.2和192.168.100.3。
三个小组group1、group2和group3分别通过端口Ethernet1/1、Ethernet1/2和Ethernet1/3接入DHCP snooping设备,并通过DHCP snooping设备与DHCP server通信。
DHCP server为group1的用户分配192.168.10.2~192.168.10.25之间的地址;为group2的用户分配192.168.10.100~192.168.10.150之间的地址;为group3的用户分配192.168.10.151~192.168.10.200之间的地址。
图1 DHCP Snooping组网拓扑图
三、技术实现
Option 82称为中继代理信息选项,该选项记录了DHCP client的位置信息。DHCP snooping设备通过在DHCP请求报文中添加Option 82,将DHCP client的位置信息告诉给DHCP server,从而使得DHCP server能够为主机分配合适的IP地址和其他配置信息,并实现对客户端的安全和策略等的控制。
中国移动江苏公司无锡分公司网络部
第 4 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
图2 Option 82应用网络结构拓扑
DHCP server通常根据请求报文中的giaddr或接收到请求报文的接口IP地址,为客户端分配IP地址。在图2中,DHCP服务器根据主机所在的网段,选取地址分配给Host A和Host B。
如果希望连接Ethernet1/2端口的客户端地址在某一范围,连接Ethernet1/3端口的客户端地址在另一范围,传统的地址分配方式是无法实现的。利用Option 82,DHCP服务器根据客户端连接的DHCP snooping端口和giaddr地址来为客户端分配合适的IP地址,这样就可以满足上述需求。
Option 82能够标识不同的用户,服务器可以根据Option 82为不同的用户分配不同的IP地址,从而实现QoS、安全和计费的管理。
3.1 Option 82功能介绍
DHCP option 82是为了增强DHCP服务器的安全性,改善IP地址配置策略而提出的一种DHCP选项。通过在网络接入设备上配置DHCP中继代理功能,中继代理把从客户端接收到的DHCP请求报文添加进option 82选项(其中包含了客户端的接入物理端口和接入设备标识等信息),然后再把该报文转发给DHCP服务器,支持option 82功能的DHCP服务器接收到报文后,根据预先配置策略和报文中option 82信息分配IP地址和其它配置信息给客户端,同时DHCP服务器也可以依据option 82中的信息识别可能的DHCP攻击报文并作出防范。DHCP中
中国移动江苏公司无锡分公司网络部
第 5 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
继代理收到服务器应答报文后,剥离其中的option 82选项并根据选项中的物理端口信息,把应答报文转交到网络接入设备的指定端口。
3.2 Option 82报文结构
DHCP option 82又称为DHCP中继代理信息选项(Relay Agent Information Option),是DHCP报文中的一个选项,其编号为82。rfc3046定义了option 82,选项位置在option 255之前而在其它option之后。
图3 报文结构图
Code:表示中继代理信息选项的序号,rfc3046定义为82,option 82即由此得名。
Len:为代理信息域(Agent Information Field)的字节个数,不包括Code和Len字段的两个字节。
Option 82可以由多个sub-option 组成,每个option 82选项至少要有一个子选项,rfc3046定义了以下两个子选项,其格式如下图所示:
图4 报文结构图
SubOpt:为子选项编号,其中代理电路ID(即Circuit ID)子选项编号为1,代理远程ID(即 Remote ID)子选项编号为2。
Len:为Sub-option Value的字节个数,不包括SubOpt和Len字段的两个字节。
option82子选项1:option82子选项1定义了代理电路ID(即Circuit ID),它表示接收到的DHCP请求报文来自的链路标识,这个标识只在中继代理节点内
中国移动江苏公司无锡分公司网络部
第 6 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
部有意义,在服务器端不可以解析其含义,只作为一个不具含义的标识使用。在本文实现中代理电路ID默认是指接收到DHCP请求报文的接入交换机Vlan名加接入二层端口名称,如Vlan2+Ethernet0/0/10,也可以由用户指定自己的代理电路ID。通常子选项1与子选项2要共同使用来标识DHCP客户端的信息。 option82子选项2:option82子选项2定义了代理远程ID(即 Remote ID),在我司交换机实现中,代理远程ID是指接收到DHCP请求报文的接入交换机的vlan MAC地址。子选项2通常与子选项1共同使用来标识DHCP客户端的信息。 DHCP请求报文:指由DHCP客户端发起的报文,希望DHCP服务器响应后分配IP地址和其它配置信息。DHCP请求报文一般有四种,分别为DHCP_DISCOVER报文、DHCP_REQUEST报文、DHCP_RELEASE报文和DHCP_INFORM报文。中继代理只针对DHCP请求报文添加option 82选项并转发给服务器。本文实现的DHCP中继对这四种请求报文都添加option 82选项。
DHCP应答报文:指由DHCP服务器响应客户端发起的请求报文,包含配置信息或指示回应结果的DHCP响应报文,DHCP应答报文一般有DHCP_OFFER报文,DHCP_DECLINE报文,DHCP_ACK报文和DHCP_NAK报文。
3.3 Option 82工作原理
图5 option 82工作原理图
中国移动江苏公司无锡分公司网络部
第 7 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
在DHCP中继代理(交换机)支持option 82的情况下,DHCP客户端通过DHCP中继从DHCP服务器获取IP地址同样要经历发现、提供、选择和确认四个阶段。这时DHCP协议按如下过程进行:
1、DHCP客户端在初始化时广播发送请求报文,这时的请求报文并不包含option 82选项。
2、DHCP中继代理将option 82选项添加到接收到的请求报文尾部后中继转发给DHCP服务器。option 82选项的子选项1(代理电路ID)默认是DHCP客户端所连接的交换机的接口信息(VLan名加物理端口名),也可以由用户自己配置代理电路ID,option 82选项的子选项2(代理远程ID)是DHCP中继设备本身的MAC地址。
3、DHCP服务器收到DHCP中继设备转发的DHCP请求报文后,根据报文中option选项所携带的信息和预定策略分配IP地址和其它信息给客户端,然后将带着DHCP配置信息以及option 82信息的应答报文发给DHCP中继代理。 4、DHCP中继代理收到DHCP服务器的应答报文后将剥离报文中的option 82信息,然后将带有DHCP配置信息的报文转发给DHCP客户端。
基于DHCP OPTION82的DOT1X认证,一般用于在用户使用DHCP方式获取地址的环境中,需要支持基于OPTION82进行地址分配策略的DHCP SERVER。用户在获取IP地址之前处于控制状态,只能访问DHCP SERVER;用户在获取地址之后处于安全状态,接入交换机转发该用户的IP和ARP报文;用户在认证前后能够获得不同地址,通过在接入交换机上联的汇聚交换机上配置ACL,控制不同源地址用户能够访问资源,来控制认证前后用户的访问权限。
为了使DHCP用户在认证前后能够获得不同(网段)的地址,交换机利用了DHCP OPTION82和DHCP Snooping技术。DHCP报文中的82选项一般由DHCP中继代理在中继DHCP报文时附加,在交换机扩展了这一功能,允许DHCP SNOOPING在监听DHCP报文时附加OPTION82信息,OPTION82的内容在DHCP用户认证之前由DHCP SNOOPING添加一个默认值,如果用户在获取地址成功后并且认证通过,则神州数码802.1X认证服务器后台会下发该用户的OPTION82信息到交换机,同时DOT1X 客户端会重新申请一次地址,DHCP SNOOPING在监听DHCP报文时附加用户认证后的OPTION82信息,DHCP SERVER会根据这个OPTION82信息给用户分
中国移动江苏公司无锡分公司网络部
第 8 页, 共14页
DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究
配另一个地址。由于用户在认证前后地址不同,则可以在接入交换机上联的汇聚交换机上进行基于源IP的ACL配置,来控制用户的访问权限。
四、组网及配置步骤
4.1 DHCP Snooping设备的配置
1. 配置步骤
# 使能DHCP Snooping功能。 # 配置端口Ethernet1/4为信任端口。 [Switch] interface ethernet 1/4 [Switch-Ethernet1/4] dhcp-snooping trust [Switch-Ethernet1/4] quit # 在端口Ethernet1/1使能Option 82。 [Switch] interface ethernet 1/1 [Switch-Ethernet1/1] dhcp-snooping information enable # 在端口Ethernet1/1配置Option 82的Circuit ID填充内容为group1。 [Switch-Ethernet1/1] dhcp-snooping information circuit-id string group1 [Switch-Ethernet1/1] quit # 在端口Ethernet1/2使能Option 82。 [Switch] interface ethernet 1/2 [Switch-Ethernet1/2] dhcp-snooping information enable # 在端口Ethernet1/2配置Option 82的Circuit ID填充内容为group2。 [Switch-Ethernet1/2] dhcp-snooping information circuit-id string group2 [Switch-Ethernet1/2] quit # 在端口Ethernet1/3使能Option 82。 [Switch] interface ethernet 1/3 [Switch-Ethernet1/3] dhcp-snooping information enable 中国移动江苏公司无锡分公司网络部 第 9 页, 共14页 DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究 [Switch-Ethernet1/3] quit # 在端口Ethernet1/3配置Option 82的Circuit ID填充内容为group3。 [Switch-Ethernet1/3] dhcp-snooping information circuit-id string group3 [Switch-Ethernet1/3] quit 2. 配置文件 interface Ethernet1/1 port link-mode bridge dhcp-snooping information enable dhcp-snooping information circuit-id string group1 # interface Ethernet1/2 port link-mode bridge dhcp-snooping information enable dhcp-snooping information circuit-id string group2 # interface Ethernet1/3 port link-mode bridge dhcp-snooping information enable dhcp-snooping information circuit-id string group3 # interface Ethernet1/4 port link-mode bridge dhcp-snooping trust # 4.2 DHCP Server设备的配置 1. 配置步骤 中国移动江苏公司无锡分公司网络部 第 10 页, 共14页 DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究 设备上,可以通过两种方式配置Option 82的内容: 1、用户自定义方式:用户手工指定Option 82的内容; 2、非用户自定义方式:采用默认的normal模式或verbose模式填充Option 82。 采用用户自定义方式配置Circuit ID子选项内容时,Circuit ID子选项的格式如图3 所示。 图6 Circuit ID子选项的格式 例如,由端口Ethernet1/1接入的用户,Circuit ID子选项内容为group1,DHCP报文中添加的Circuit ID子选项信息应为:0x010667726F757031,其中0106是Circuit ID的子选项号和子选项长度,67726F757031是字符串“group1”的十六进制值。 本次组网中只需根据小组编号进行IP地址的分配,因此,在DHCP server上只需对Circuit ID子选项中标识小组编号的字段进行匹配即可。 说明:DHCP server使用的是Cisco Catalyst 3745设备上的配置,对应的软件版本为IOS 12.3(11)T2版本,如果使用其他型号或其他版本的设备,请参考随机资料中的用户手册进行操作。 # 配置接口的IP地址为192.168.10.1/24。 Server> enable Server# configure terminal Server(config)# interface fastethernet 0/0 Server(config-if)# ip address 192.168.10.1 255.255.255.0 Server(config-if)# exit # 配置DHCP Server功能,并配置使用Option 82信息进行地址分配。 Server(config)# service dhcp Server(config)# ip dhcp use class # 为从DHCP snooping设备Ethernet1/1端口接入的group1用户建立DHCP 中国移动江苏公司无锡分公司网络部 第 11 页, 共14页 DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究 分类,并配置匹配的Option 82信息为Circuit ID子选项中的小组编号,无需匹配的内容可以使用通配符“*”代替。 Server(config)# ip dhcp class group1 Server(dhcp-class)# relay agent information Server(dhcp-class-relayinfo)# relay-information hex 010667726F757031* Server(dhcp-class-relayinfo)# exit # 为从DHCP snooping设备Etherent1/2端口接入的group2用户配置分类和匹配信息,方法与上面命令相似,只是将Option 82信息中的小组编号由1改为2。 Server(config)# ip dhcp class group2 Server(dhcp-class)# relay agent information Server(dhcp-class-relayinfo)# relay-information hex 010667726F757032* Server(dhcp-class-relayinfo)# exit # 为从DHCP snooping设备Etherent1/3端口接入的group3用户配置分类和匹配信息,方法与上面命令相似。 Server(config)# ip dhcp class group3 Server(dhcp-class)# relay agent information Server(dhcp-class-relayinfo)# relay-information hex 010667726F757033* Server(dhcp-class-relayinfo)# exit # 创建DHCP地址池office,为DHCP地址池配置租约期限、网关、DNS和WINS服务器地址。 Server(config)# ip dhcp pool office Server(dhcp-config)# network 192.168.10.0 Server(dhcp-config)# lease 0 12 Server(dhcp-config)# default-router 192.168.10.1 Server(dhcp-config)# dns-server 192.168.100.2 Server(dhcp-config)# netbios-name-server 192.168.100.3 # 为三个DHCP分类分别指定地址范围。 Server(dhcp-config)# class group1 中国移动江苏公司无锡分公司网络部 第 12 页, 共14页 DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究 Server(dhcp-pool-class)# address range 192.168.10.2 192.168.10.25 Server(dhcp-pool-class)# class group2 Server(dhcp-pool-class)# address range 192.168.10.100 192.168.10.150 Server(dhcp-pool-class)# class group3 Server(dhcp-pool-class)# address range 192.168.10.151 192.168.10.200 4.3 其它注意事项 只有使能DHCP snooping功能之后,DHCP Option 82功能才能生效。 DHCP snooping不支持链路聚合。若二层以太网接口加入聚合组,则该接口上进行的DHCP snooping配置不会生效;该接口退出聚合组后,之前的DHCP snooping配置才会生效。 设备只有位于DHCP客户端与DHCP服务器之间,或DHCP客户端与DHCP中继之间时,DHCP snooping功能配置后才能正常工作;设备位于DHCP服务器与DHCP中继之间时,DHCP snooping功能配置后不能正常工作。 DHCP snooping option 82功能建议在最靠近DHCP client的snooping设备上使用,以达到精确定位用户位置的目的。 使能DHCP snooping功能的设备,不能作为DHCP服务器和DHCP中继。 建议不要在同一台设备上同时配置DHCP客户端/BOOTP客户端和DHCP snooping功能,否则可能无法生成DHCP snooping表项,DHCP客户端/BOOTP客户端也可能申请不到IP地址。 4.4 结果验证 经过上述配置后,DHCP服务器已经可为物联网研究院3个不同办公区域的不同小组自动分配一定范围内的IP地址及网关、DNS、WINS服务器地址。 通过在汇聚交换机上配置ACL,控制三个不同网段的IP对不同网络的安全访问。通过用户的IP严格区分不同用户间的权限,学术交流区域只能上外网,办公区域只能上OA办公网,而18层是研发区实验室只能与北京集团公司总部的实验室内网互联,各个小组之间无法互访,也无法访问不应该访问的网络资源。 中国移动江苏公司无锡分公司网络部 第 13 页, 共14页 DHCP及option82安全机制在无锡物联网研究院办公网络中的应用研究 五、总结 本技术专题重点在于测试研究如何在一个相对简单的环境内,使用一台DHCP Server实现了多个VLAN的Option 82认证。在兼顾使用便利性的同时又注重加强网络的安全性。同时也提高了我公司在此类应用领域的实践能力,对其它兄弟公司类似应用也有一定的借鉴意义。 中国移动江苏公司无锡分公司网络部 第 14 页, 共14页 因篇幅问题不能全部显示,请点此查看更多更全内容