目 录
第1章 DHCP配置······································································1-1
1.1 DHCP介绍·········································································································1-1 1.2 DHCP服务器配置······························································································1-2 1.3 DHCP中继配置·································································································1-4 1.4 DHCP配置举例·································································································1-5 1.5 DHCP排错帮助·································································································1-7
第2章 DHCP option 82配置····················································2-1
2.1 DHCP option 82介绍·······················································································2-1
2.1.1 DHCP option 82报文结构······································································2-1
2.1.2 option 82工作机制·················································································2-2 2.2 DHCP option 82的配置任务序列·····································································2-2 2.3 DHCP option 82应用举例················································································2-4 2.4 DHCP option 82排错帮助················································································2-6
第3章 DHCP Snooping配置·····················································3-1
3.1 DHCP Snooping介绍·······················································································3-1 3.2 DHCP Snooping的配置任务序列·····································································3-1 3.3 DHCP Snooping典型应用················································································3-5 3.4 DHCP Snooping排错帮助················································································3-5
3.4.1 监控和调试信息······················································································3-5
3.4.2 DHCP Snooping排错帮助······································································3-6
1
DHCP及相关操作 第1章 DHCP 配置
第1章 DHCP配置
1.1 DHCP介绍
DHCP[RFC2131]是Dynamic Host Configuration Protocol动态主机配置协议的简写,它能从地址池中把IP地址动态分配给请求的主机,同时也能够提供其它网络配置参数,如缺省网关、DNS服务器、域名和网络范围内主机映像文件的位置等。DHCP是BOOTP协议功能的增强,与BOOTP相比,DHCP是主流技术,它不仅能为无盘工作站提供引导信息,而且在大型的网络中可以大大减轻网络管理员跟踪记录手工分配IP地址的负担,同时也能减轻用户的配置任务和花费。DHCP的另外一个优点是可以部分缓解IP地址紧张的状况,当某一IP地址的用户离开使用环境时,该IP地址还能再次分配给其他用户使用。
DHCP是基于Client-Server模式的协议,DHCP客户机向DHCP服务器索取网络地址及配置参数;服务器为客户机提供网络地址及配置参数;当DHCP客户机和DHCP服务器不在同一子网时,需要由DHCP中继为DHCP客户机和DHCP服务器传递DHCP报文。协议实现的过程如下:
DiscoverOfferRequest Ack
DHCP CLIENT
DHCP SERVER
图 1-1 DHCP协议交互过程
图解:
1. 首先DHCP客户机在本子网内广播DHCPDISCOVER包;
2. DHCP服务器收到DHCPDISCOVER包后,给该DHCP客户机发送带有IP地址和其
他网络参数的DHCPOFFER包;
3. DHCP客户机对收到的DHCPOFFER包进行选择后,广播带有它要选择的DHCP服务
器的信息的DHCPREQUEST包;
4. 被DHCP客户机选中的DHCP服务器向DHCP客户机发送DHCPACK包,DHCP客
户机得到IP地址和其他网络配置参数。
通过上面四个步骤,完成动态分配主机配置的协议过程。但如果DHCP服务器和DHCP客户机不在同一网络时,服务器是无法收到客户机发出的DHCP广播报文,因此服务器也不会给客户机发送任何DHCP报文,这时需要DHCP中继来转发这些DHCP报文,完成DHCP客户机和服务器之间的DHCP报文交互过程。
交换机实现了DHCP服务器和DHCP中继的功能。DHCP服务器不但支持动态分配IP
1-1
DHCP及相关操作 第1章 DHCP 配置 地址,还支持手工绑定IP地址(即为指定的硬件地址或者指定设备标识的网络设备分配一个固定的长期的IP地址)。动态分配IP地址和手工绑定IP地址的区别和联系是:1)采用动态方式获得的IP地址可以是不固定的;而采用手工绑定方式获得的IP地址是固定的;2)采用动态方式获得的IP地址租期与其地址池的租期一致,是有时间限制的;而采用手工绑定方式获得的IP地址的租期理论上是无限长时间,即没有时间限制;3)已经动态分配出去的地址,不允许再手工绑定;4)手工DHCP地址池可以继承相关网段的动态DHCP地址池的网络配置参数。
1.2 DHCP服务器配置
DHCP服务器配置任务序列如下: 1. 启动/关闭DHCP服务器功能 2. 配置DHCP地址池
(1) 创建/删除DHCP地址池 (2) 配置动态DHCP地址池的参数 (3) 配置手工DHCP地址池的参数 3. 启动记录地址冲突的日志功能
1.启动/关闭DHCP服务 命令
全局配置模式 service dhcp no service dhcp
2.配置DHCP地址池 (1)创建/删除DHCP地址池 命令
全局配置模式 ip dhcp pool DHCP地址池配置模式 network-address 解释 配置地址池可分配的地址范围。本命令的no操作删除地址池可分配的地址。 解释 配置DHCP地址池。本命令的no操作删除DHCP地址池。 解释 启动DHCP服务器或中继功能。本命令的no操作关闭DHCP服务器或中继功能。 1-2 DHCP及相关操作 第1章 DHCP 配置 default-router [address1[address2[…address8]]] no default-router dns-server [address1[address2[…address8]]] no dns-server domain-name [address1[address2[…address8]]] no netbios-name-server netbios-node-type {b-node|h-node|m-node|p-node| no netbios-node-type bootfile [address1[address2[…address8]]] no next-server [address1[address2[…address8]]] option lease { days [hours][minutes] | infinite } no lease 全局配置模式 ip dhcp excluded-address DHCP地址池配置模式 解释 排除地址池中的不用于动态分配的地址。本命令的no操作删除此操作。 配置DHCP客户机的启动时的导入文件名。本命令的no操作删除此操作。 配置客户机导入文件存放的服务器地址。本命令的no操作删除客户机导入文件存放的服务器地址。 配置option所指定代码的网络参数的值。本命令的no操作删除option所指定代码的网络参数值。 配置地址池中地址的租用期限。本命令的no操作删除地址池中地址的租用期限。 配置DHCP客户机的节点类型。本命令的no操作删除DHCP客户机的节点类型。 为DHCP客户机配置缺省网关。本命令的no操作删除缺省网关。 为DHCP客户机配置DNS服务器。本命令的no操作 为DHCP客户机配置域名;本命令的no操作为删除域名。 配置Wins服务器的地址。本命令的no操作删除服务器的地址。 1-3 DHCP及相关操作 第1章 DHCP 配置 hardware-address client-identifier 3.启动记录地址冲突的日志功能 命令 全局配置模式 ip dhcp conflict logging no ip dhcp conflict logging 特权用户配置模式 clear ip dhcp conflict 解释 打开/关闭DHCP服务器检测地址冲突的日志功能。 删除单条地址冲突的记录或全部地址的冲突记录。 在手工绑定地址时,配置/删除分配给指定客户机的用户的IP地址。 在手工绑定地址时,指定/删除用户的唯一标识。 在手工绑定地址时,配置/删除用户名。 在手工分配地址时,指定/删除用户的硬件地址。 1.3 DHCP中继配置 当DHCP客户机和DHCP服务器不在同一个网段时,由DHCP中继传递DHCP报文。增加DHCP中继功能的好处是不必为每个网段都设置DHCP服务器,同一个DHCP服务器可以为很多个子网的客户机提供网络配置参数,既节约了成本又方便了管理。 DiscoverOffer Request Ack DHCP CLIENT DHCP Relay DiscoverOfferRequest Ack DHCP SERVER 图 1-2 DHCP中继 如上图所示,DHCP客户机和DHCP服务器不在一个网络内,DHCP客户机仍然遵循DHCP的四个步骤,但增加了DHCP中继的转发功能: 1. 首先广播DHCPDISCOVER报文,DHCP中继接收到客户机广播的 DHCPDISCOVER文后,在该报文的中继代理字段处加入自己的IP地址后转发给 1-4 DHCP及相关操作 第1章 DHCP 配置 指定的DHCP服务器(有关DHCP帧格式可参看RFC2131); 2. DHCP服务器接收到经过DHCP中继转发的DHCPDISCOVER后,带有网络配置 参数的DHCPOFFER报文经过DHCP中继发送给DHCP客户机; 3. DHCP客户机选中一个DHCP服务器,广播DHCPREQUEST报文,DHCP中继 处理该报文后转发给DHCP服务器; 4. DHCP服务器收到DHCPREQUEST后,回应DHCPACK报文经过DHCP中继发 送给DHCP客户机。 DHCP中继配置任务序列如下: 1. 启动DHCP中继 2. 配置DHCP中继转发DHCP广播报文 1.启动DHCP中继 命令 全局配置模式 service dhcp no service dhcp 2.配置DHCP中继转发DHCP广播报文 命令 全局配置模式 ip forward-protocol udp bootps 解释 解释 在启动DHCP服务器功能的同时也启动了DHCP中继功能。 no ip forward-protocol udp 中继转发UDP端口号为67的DHCP广播报文。bootps 接口配置模式 ip helper-address 指定DHCP中继转发的目标IP地址;本命令的no操作为取消该项配置。 1.4 DHCP配置举例 案例1: 为减轻网络管理员和用户的配置负担,现有某公司将交换机作为DHCP服务器。其Admin VLAN的IP地址为10.16.1.2/24。其中公司局域网因为办公地点分成了A地、B地两部分,A地、B地的网络配置如下表。 PoolA(network 10.16.1.0) 设备 IP地址 缺省网关 DNS服务器 Wins服务器 Wins的节点类型 Lease PoolB(network 10.16.2.0) 设备 IP地址 缺省网关 DNS服务器 WWW服务器 10.16.2.200 10.16.2.201 10.16.2.202 10.16.2.209 1天 10.16.1.200 10.16.1.201 10.16.1.202 10.16.1.209 3天 H-node Lease 1-5 DHCP及相关操作 第1章 DHCP 配置 其中在A处,因为工作的需要,特地将一台MAC地址为00-03-22-23-dc-ab的机器分配固定的IP地址10.16.1.210,命名为management。 Switch(config)#interface vlan 1 Switch(Config-if-Vlan-1)#ip address 10.16.1.2 255.255.255.0 Switch(Config-if-Vlan-1)#exit Switch(config)#ip dhcp pool A Switch(dhcp-A-config)#network 10.16.1.0 24 Switch(dhcp-A-config)#lease 3 Switch(dhcp-A-config)#default-router 10.16.1.200 10.16.1.201 Switch(dhcp-A-config)#dns-server 10.16.1.202 Switch(dhcp-A-config)#netbios-name-server 10.16.1.209 Switch(dhcp-A-config)#netbios-node-type H-node Switch(dhcp-A-config)#exit Switch(config)#ip dhcp excluded-address 10.16.1.200 10.16.1.201 Switch(config)#ip dhcp pool B Switch(dhcp-B-config)#network 10.16.2.0 24 Switch(dhcp-B-config)#lease 1 Switch(dhcp-B-config)#default-router 10.16.2.200 10.16.2.201 Switch(dhcp-B-config)#dns-server 10.16.2.202 Switch(dhcp-B-config)#option 72 ip 10.16.2.209 Switch(dhcp-config)#exit Switch(config)#ip dhcp excluded-address 10.16.2.200 10.16.2.201 Switch(config)#ip dhcp pool A1 Switch(dhcp-A1-config)#host 10.16.1.210 Switch(dhcp-A1-config)#hardware-address 00-03-22-33-dc-ab Switch(dhcp-A1-config)#client-name management Switch(dhcp-A1-config)#exit 使用提示: 当有DHCP/BOOTP Client连接在交换机的属于VLAN1端口时,该Client只能获取属于10.16.1.0/24网段的地址而不可能获取10.16.2.0/24网段的地址。因为Client发出的广播包经过交换机的VLAN接口转发后,申请的是与VLAN接口在一个网段的IP地址,交换机的VLAN接口的IP地址为10.16.1.2/24,因此Client申请到的IP地址是10.16.1.0/24网段的。 若DHCP/BOOTP Client希望申请到10.16.2.0/24网段的地址,该Client发出的广播包经由转发的网关必须是10.16.2.0/24网段的。若要从交换机获取10.16.2.0/24地址池的IP地址,则首先要保证该Client的网关到交换机的可达性。 案例2: 1-6 DHCP及相关操作 第1章 DHCP 配置 DHCP Client E1/1 192.168.1.1E1/2 10.1.1.1 DHCP Client DHCP Relay DHCP Server 10.1.1.10 DHCP Client 图 1-3 DHCP Relay配置 如图所示,配置DCRS为DHCP中继。DHCP服务器的地址为10.1.1.10,则配置如下: Switch(config)#interface vlan 1 Switch(Config- if-Vlan1)#ip address 192.168.1.1 255.255.255.0 Switch(Config- if-Vlan1)#exit Switch(config)#vlan 2 Switch(Config-Vlan2)#exit Switch(config)#interface Ethernet 1/2 Switch(Config-If-Ethernet1/2)#switchport access vlan 2 Switch(Config-If-Ethernet1/2)#exit Switch(config)#interface vlan 2 Switch(Config-if-Vlan2)#ip address 10.1.1.1 255.255.255.0 Switch(Config-if-Vlan2)#exit Switch(Config)#ip forward-protocol udp bootps Switch(config)#interface vlan 1 Switch(Config-if-Vlan1)#ip helper-address 10.1.1.10 Switch(Config-if-Vlan1)#exit 注意:建议配置命令ip forward-protocol udp 1.5 DHCP排错帮助 DHCP客户机无法获得IP地址及其它网络参数,在确保DHCP客户机硬件、线缆等没有问题的前提下,检查可能存在的情况和建议的解决方法: & 首先检查DHCP服务器是否已启动,若没有启动,建议启动相关的DHCP服务器; & 若DHCP客户机和服务器不在同一个物理网络中,检查中间负责转发DHCP报文的路 由器是否具备DHCP中继功能。若中间路由器不具备DHCP中继功能,建议替换掉中 1-7 DHCP及相关操作 第1章 DHCP 配置 间的路由器或更新版本,使其具备DHCP中继功能; & 用户比较容易遇到的现象是DHCP客户机连接在交换机上,却获得不到IP地址。遇到 这种情况请检测DHCP Server内是否有与交换机VLAN接口在一个网段的地址池,如没有则请添加该网段的地址池(这并不意味DCS不具备给其他网段分配IP地址的能力,参见第二条解决方法); & 在DHCP服务中,动态分配IP地址与手工分配IP地址的地址池是互斥的,即如果在 一个地址池执行命令network和命令host时,只能有一个生效;并且在手工地址池中一个地址池内只能配置一对IP-MAC的绑定,如果需要建立多对绑定,可以建立多个手工地址池,在每个地址池分别配置IP-MAC的绑定,否则在同一地址池内配置新的配置会覆盖旧的配置。 1-8 DHCP及相关操作 第2章 DHCP option 82 配置 第2章 DHCP option 82配置 2.1 DHCP option 82介绍 DHCP option 82是DHCP报文中的中继代理信息选项(Relay Agent Information Option),其选项编号为82。DHCP option 82是为了增强DHCP服务器的安全性,改善IP地址配置策略而提出的一种机制。通过在网络接入设备上配置DHCP中继代理功能,中继代理把从客户端接收到的DHCP请求报文添加进option 82选项(其中包含了客户端的接入物理端口和接入设备标识等信息),然后再把该报文转发给DHCP服务器,支持option 82功能的DHCP服务器接收到报文后,根据预先配置策略和报文中option 82信息分配IP地址和其它配置信息给客户端,同时DHCP服务器也可以依据option 82中的信息识别可能的DHCP攻击报文并作出防范。DHCP中继代理收到服务器应答报文后,剥离其中的option 82选项并根据选项中的物理端口信息,把应答报文转交到网络接入设备的指定端口。DHCP option82的应用对客户端是透明的。 2.1.1 DHCP option 82报文结构 DHCP报文可以由多个option字段组成,option 82就是其中的一种option,它必须在其它选项之后,option255选项之前。其格式如下图所示: Code:表示中继代理信息选项的序号,RFC3046定义为82,option 82即由此得名。 Len:为代理信息域(Agent Information Field)的字节个数,不包括Code和Len字段的两个字节。 option 82可以由多个sub-option 组成,每个option 82选项至少要有一个子选项,RFC3046定义了以下两个子选项,其格式如下图所示: SubOpt:为子选项编号,其中代理电路ID(即Circuit ID)子选项编号为1,代理远程ID(即 Remote ID)子选项编号为2。 2-1 DHCP及相关操作 第2章 DHCP option 82 配置 Len:为Sub-option Value的字节个数,不包括SubOpt和Len字段的两个字节。 2.1.2 option 82工作机制 DHCP option 82流程图 在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 Server DHCP Client DHCP ReplyDHCP ReplyOption82DHCP Request DHCP Request Option 82DHCP Relay Agent 2.2 DHCP option 82的配置任务序列 1. 与DHCP option 82相关的配置内容 1) 配置中继代理的DHCP option 82使能开关 2) 配置接口的DHCP option 82属性 2-2 DHCP及相关操作 第2章 DHCP option 82 配置 3) 配置服务器的DHCP option 82使能开关 4)DHCP option 82的维护与诊断 1) 配置中继代理的DHCP option 82使能开关 命令 全局配置模式 ip dhcp relay information option no ip dhcp relay information option 2) 配置接口的DHCP option 82属性 命令 接口配置模式 解释 本命令用于设置系统对于接收到的含有option82选项的DHCP请求报文的重转发策略,其中drop模式表示如果报文中含有 ip dhcp relay information policy {drop | keep | replace} no ip dhcp relay information policy option82选项,则系统丢弃该DHCP报文不作处理;keep模式表示系统保持现有报文中的option82选项不变转发给服务器处理;replace模式表示系统使用自己的option82选项替换现有报文中的option82选项,然后转发给服务器处理。本命令的no操作设置option82选项DHCP报文的重转发策略为replace。 本命令用于设置从接口接收的DHCP请求报文添加option 82子选项1(电路ID选项) 的形式,standard表示标准的vlan名加 ip dhcp relay information option 物理端口名形式,如 subscriber-id {standard | “Vlan2+Ethernet0/0/12”, no ip dhcp relay information option 为用户自己指定的option 82的circuit-id subscriber-id 内容,它是一个长度小于64的字符串。本 命令的no操作把添加option 82子选项 1(电路ID选项)的形式设置为standard形式。 3) 配置服务器的DHCP option 82使能开关 命令 全局配置模式 解释 解释 设置本命令启用交换机中继代理的option82功能,本命令的no操作关闭交换机中继代理的option82功能。 2-3 DHCP及相关操作 第2章 DHCP option 82 配置 ip dhcp server relay information enable enable 4)DHCP option 82的维护与诊断 命令 特权配置模式 解释 本命令显示系统DHCP option 82的状态 show ip dhcp relay information option 信息,包括option82使能开关,接口重转发策略,接口电路ID模式,以及交换机DHCP服务器option82使能开关。 使用本命令显示DHCP中继代理处理数据 debug ip dhcp relay packet 包的信息,包括option 82选项的添加和剥离动作信息。 本命令用于设置交换机DHCP服务器支持作使服务器忽略处理option 82选项。 no ip dhcp server relay information 对option82选项的识别。本命令的no操 2.3 DHCP option 82应用举例 DHCP Client PC1Switch1DHCP Relay Agent Vlan2:ethernet/3 Switch3 DHCP Client PC2 Switch2Vlan3 Vlan2:ethernet/2DHCP Server图 2-1 DHCP option 82典型应用案例 在上面应用案例中,二层交换机Switch1和Switch2都接在三层交换机Switch3上,Switch3作为DHCP中继代理向DHCP服务器转交来自DHCP客户端的请求报文,并把服务器的应答报文转交给DHCP客户端,完成DHCP协议过程。在不启用DHCP option 82功能时,DHCP服务器无法区分DHCP客户端是来自Switch1还是Switch2下连的网络,因此Switch1和Switch2连接的PC终端都从DHCP服务器中公用地址池中分配地址。启用DHCP option 82功能以后,由于Switch3在来自客户端的请求报文中附加了接入Switch3的端口 2-4 DHCP及相关操作 第2章 DHCP option 82 配置 信息,这时服务器可以区分客户端是来自Switch1还是Switch2的网络,因此可以为这两个网络分配互相隔离的地址空间,便于网络管理。 Switch3(MAC地址为00:03:0f:02:33:01)配置如下 Switch3(Config)#service dhcp Switch3(Config)#ip dhcp relay information option Switch3(Config)#ip forward-protocol udp bootps Switch3(Config-if-vlan3)#ip address 192.168.10.222 255.255.255.0 Switch3(Config-if-vlan2)#ip address 192.168.102.2 255.255.255.0 Switch3(Config-if-vlan2)#ip helper 192.168.10.88 Linux的ISC DHCP Server支持option 82选项,其配置文件/etc/dhcpd.conf为 ddns-update-style interim; ignore client-updates; class \"Switch3Vlan2Class1\" { match if option agent.circuit-id = \"Vlan2+Ethernet1/2\" and option agent.remote-id=00:03:0f:02:33:01; } class \"Switch3Vlan2Class2\" { match if option agent.circuit-id = \"Vlan2+Ethernet1/3\" and option agent.remote-id=00:03:0f:02:33:01; } subnet 192.168.102.0 netmask 255.255.255.0 { option routers 192.168.102.2; option subnet-mask 255.255.255.0; option domain-name \"example.com.cn\"; option domain-name-servers 192.168.10.3; 2-5 DHCP及相关操作 第2章 DHCP option 82 配置 authoritative; pool { range 192.168.102.21 192.168.102.50; default-lease-time 86400; #24 Hours max-lease-time 172800; #48 Hours allow members of \"Switch3Vlan2Class1\"; } pool { range 192.168.102.51 192.168.102.80; default-lease-time 43200; #12 Hours max-lease-time 86400; #24 Hours allow members of \"Switch3Vlan2Class2\"; } } 这时DHCP服务器会为经Switch3中继来自Switch1的网络节点分配192.168.102.21~192.168.102.50之间的地址,为来自Switch1的网络节点分配192.168.102.51~192.168.102.80之间的地址。 2.4 DHCP option 82排错帮助 & DHCP option 82是作为DHCP中继代理的一个子功能模块实现的,在使用option 82 功能之前,要确保DHCP中继代理正确配置。 & DHCP option 82是DHCP中继代理和DHCP服务器共同配合完成IP地址分配任务, DHCP服务器要针对中继代理的网络拓扑,正确设置分配策略,否则即使中继代理的option 82工作正常,地址分配也不会成功进行。在存在多种中继代理情况时,注意设置好接口DHCP请求报文的重转发策略。 & 对于DHCP中继代理的option 82功能实现,运行过程中可以使用debug ip dhcp relay packet命令显示中继代理的数据包处理过程,包括添加option 82的具体内容,采取的重转发策略,中继代理剥离服务器的option 82内容等,这些信息有助于用户排错诊断。 & 对于DHCP服务器的option 82功能实现,运行过程中可以使用debug ip dhcp server packet命令显示服务器的数据包处理过程,包括显示识别出请求包的option 82信息,在应答包中返回的option 82信息。 2-6 DHCP及相关操作 第3章 DHCP Snooping 配置 第3章 DHCP Snooping配置 3.1 DHCP Snooping介绍 DHCP Snooping功能指交换机监测DHCP CLIENT通过DHCP协议获取IP的过程。它通过设置信任端口和非信任端口,来防止DHCP 攻击及私设DHCP SERVER。从信任端口接收的DHCP报文无需校验即可转发。典型的设置是将信任端口连接DHCP SERVE或者DHCP RELAY代理。非信任端口连接DHCP CLIENT,交换机将转发从非信任端口接收的DHCP请求报文,不转发从非信任端口接收的DHCP回应报文。如果从非信任端口接收DHCP回应报文,除了发出告警信息外,并可根据设置对该端口执行相应的动作,比如shutdown,下发blackhole。如果启用了DHCP Snooping绑定功能,则交换机将会保存非信任端口下的DHCP CLIENT的绑定信息,每一条绑定信息包含该DHCP CLIENT的MAC地址、IP地址、租期、VLAN号和端口号,这些绑定信息存放于DHCP Snooping的绑定表中。利用绑定信息,DHCP Snooping可以结合dot1x, arp等模块或独立实现用户的接入控制。 防伪装DHCP Server:一旦交换机截获了从非信任端口收到的DHCP Server回应包(包括DHCPOFFER, DHCPACK和DHCPNAK),将发出警告,并相应做出反应(shutdown端口或下发BlackHole)。 防DHCP过载攻击:要对信任端口和非信任端口做DHCP收包限速,防止过多的DHCP报文攻击CPU。 记录DHCP绑定数据:DHCP SNOOPING在转发DHCP报文的同时,记录DHCP SERVER分配的绑定数据,并可以把绑定数据上载到指定的服务器进行备份。这些绑定数据主要用于配置dot1x userbased端口的动态用户。有关dot1x userbased模式的用法请参考《dot1x配置》的章节。 添加绑定ARP:DHCP SNOOPING捕获到绑定数据之后,可以根据绑定数据中的参数添加静态绑定ARP,这样可以防止ARP欺骗。 添加信任用户:DHCP SNOOPING捕获到绑定数据之后,可以根据绑定数据中的参数添加添加信任用户表项,这样这些用户就可以不经过DOT1X认证而访问所有资源。 自动恢复:交换机shutdown端口或者下发blockhole一段时间后,交换机应主动恢复该端口或源Mac的通讯,同时通过syslog发送信息到Log Server。 LOG功能:交换机检测发现异常收包时;或者自动恢复时,应自动发送syslog信息到Log Server。 3.2 DHCP Snooping的配置任务序列 1. 启动DHCP Snooping 3-1 DHCP及相关操作 第3章 DHCP Snooping 配置 2. 启动DHCP Snooping绑定功能 3. 启动DHCP Snooping绑定ARP功能 4. 配置helper server地址 5. 设置信任端口 6. 启动DHCP Snooping绑定DOT1X功能 7. 启动DHCP Snooping绑定USER功能 8. 添加静态表项功能 9. 设置防御动作 10. 设置DHCP报文速率限制 11. 打开调试开关 1. 启动DHCP Snooping 命令 全局配置模式 ip dhcp snooping enable no ip dhcp snooping enable 2. 启动DHCP Snooping绑定功能 命令 全局配置模式 ip dhcp snooping binding enable no ip dhcp snooping binding enable 3. 配置helper server地址 命令 全局配置模式 ip user helper-address A.B.C.D [port 4. 启动DHCP Snooping绑定ARP功能 配置或删除helper address地址 no ip user helper-address 解释 开启或关闭 DHCP snooping绑定功能 解释 开启或关闭 DHCP snooping功能 解释 3-2 DHCP及相关操作 第3章 DHCP Snooping 配置 命令 全局配置模式 ip dhcp snooping binding arp no ip dhcp snooping binding arp 5. 设置信任端口 命令 端口配置模式 ip dhcp snooping trust no Ip dhcp snooping trust 解释 开启或关闭 DHCP snooping绑定ARP功能 解释 设置或删除端口的 DHCP snooping信任属性 6. 启动DHCP SNOOPING绑定DOT1X功能 命令 端口配置模式 ip dhcp snooping binding dot1x no ip dhcp snooping binding dot1x 7. 启动DHCP SNOOPING绑定USER功能 命令 端口配置模式 解释 开启或关闭 DHCP snooping绑定dot1x功能 解释 ip dhcp snooping binding user-control no ip dhcp snooping binding 开启或关闭DHCP snooping绑定user功能 user-control 8. 添加静态绑定信息 3-3 DHCP及相关操作 第3章 DHCP Snooping 配置 命令 全局配置模式 ip dhcp snooping binding user no ip dhcp snooping binding user 9. 设置防御动作 命令 端口配置模式 解释 添加/删除 DHCP snooping静态绑定表项 ip dhcp snooping action {shutdown|blackhole} [recovery 设置或删除端口的 DHCP snooping自动防御 动作 no ip dhcp snooping action 10. 设置数据转发速率限制 命令 全局配置模式 ip dhcp snooping limit-rate 11. 打开调试开关 命令 特权配置模式 debug ip dhcp snooping packet debug ip dhcp snooping event debug ip dhcp snooping update debug ip dhcp snooping binding 请参照系统排错章节 解释 解释 配置DHCP snooping报文转发速率 3-4 DHCP及相关操作 第3章 DHCP Snooping 配置 3.3 DHCP Snooping典型应用 图 3-1 DHCP Snooping 防止非法dhcp server示意图 如上图,Mac-AA设备为正常用户,连接在DCN交换机非信任端口1/1上,其通过DHCP Client活动IP 1.1.1.5;DHCP Server和GateWay分别连接在DCN交换机的信任端口1/11; 1/12上;恶意用户Mac-BB连接在非信任端口1/10上,试图伪装DHCP Server(发送DHCPACK)。在交换机上设置DHCP snooping将能有效发现并阻止这种网络攻击 配置序列为: switch# switch#config switch(Config)#ip dhcp snooping switch(Config)#interface ethernet 1/11 switch(Config-Ethernet1/11)#ip dhcp snooping trust switch(Config-Ethernet1/11)#exit switch(Config)#interface ethernet 1/12 switch(Config-Ethernet1/12)#ip dhcp snooping trust switch(Config-Ethernet1/12)#exit switch(Config)#interface ethernet 1/1-10 switch(Config-Port-Range)#ip dhcp snooping action shutdown switch(Config-Port-Range)# 3.4 DHCP Snooping排错帮助 3.4.1 监控和调试信息 3-5 DHCP及相关操作 第3章 DHCP Snooping 配置 可以使用debug ip dhcp snooping命令来监控调试信息。 3.4.2 DHCP Snooping排错帮助 当在使用DHCP Snooping功能出现问题时,请检查是否是如下原因: & 检查全局DHCP Snooping开关是否打开; & 如果配置dhcp snooping, 而dhcp客户端没有获取ip时,请检查连接dhcp server/relay 的端口是否已配置成信任端口。 3-6 因篇幅问题不能全部显示,请点此查看更多更全内容 {ascii