环境:cisco dhcp server和客户端都属于vlan27,dhcp server 接在交换机G0/1,客户端接在交换机的G0/2html
cisco dhcp server相关配置ios
ip dhcp pool vlan27 network 192.168.27.0 255.255.255.0 default-router 192.168.27.1 dns-server 192.168.27.1 interface Vlan27 ip dhcp relay information trusted //必须配置,不然客户端获取不到地址 ip address 192.168.27.1 255.255.255.0
access-switch交换机相关配置服务器
ip dhcp snooping vlan 27 ip dhcp snooping interface GigabitEthernet0/1 switchport access vlan 27 switchport mode access media-type rj45 speed 100 duplex full no negotiation auto spanning-tree portfast edge ip dhcp snooping trust
说明:oop
一、路由器链接交换机的三层接口或者interface vlan里面必须配置 ip dhcp relay information trusted,不然客户端没法获取地址spa
由于access-switch接入层交换机默认开启了ip dhcp snooping information option,此时接入层交换机会在客户端发出的dhcp请求报文中插入option82信息(关于option82请看这里),因为dhcp server和客户端处于同一个网段中并无通过dhcp中继代理,对于cisco的dhcp server而言,若是收到了一个插入了option82的请求报文,那么就会认为是一个从dhcp中继代理过来的请求报文,此时就会检查该报文的giaddr字段,可是因为属于同网段该字段是0.0.0.0 dhcp server会认为是一个不合法的地址,此时就会将该报文丢弃,致使客户端获取不到IP地址代理
针对此状况cisco ios就有一条专门处理的命令来避免此问题 ip dhcp relay information trusted(接口命令)或者ip dhcp relay information trust-all(全局命令,对全部路由器接口都有效);这两条命令的做用就是容许被插入了选项82信息,但其giaddr字段为0.0.0.0的DHCP请求报文经过。
code
注:orm
一、上述的状况还能够在接入层交换机上面关闭插入option82选项的功能,这样即便dhcp不信任giaddr字段是0.0.0.0 也能够得到ip地址。命令是 no ip dhcp snooping information optionrouter
二、Windows DHCP服务器应该没有检查这类DHCP请求的机制,因此上面的实例中不论交换机是否插入选项82信息,客户端老是能够获得IP地址。server