試驗拓撲安全
環境:dhcp server和dhcp客戶端屬於同vlan,可是客戶端屬於不一樣的交換機,在L2和L3交換機開啓dhcp snooping後得出以下結論oop
L3交換機的配置spa
ip dhcp pool vlan27 network 172.28.27.0 255.255.255.0 default-router 172.28.27.254 dns-server 172.28.28.15 ! ! ip dhcp snooping vlan 27
ip dhcp snooping information option allow-untrusted //必須加此命令,由於L3交換機也開啓了dhcp snooping,具體解釋以下
ip dhcp snooping
interface GigabitEthernet0/0
switchport trunk encapsulation dot1q
switchport mode trunk
media-type rj45
speed 1000
duplex full
no negotiation auto
ip dhcp snooping limit rate 720 debug
L2交換機配置code
ip dhcp snooping vlan 27 ip dhcp snooping ! interface GigabitEthernet0/0 switchport trunk encapsulation dot1q switchport mode trunk media-type rj45 speed 1000 duplex full no negotiation auto ip dhcp snooping trust
說明:orm
一、從L2交換機過來的DHCP請求報文是已經被插入了選項82信息,若是將L3的Gi0/0設置爲信任端口,那麼插入了82選項的DHCP請求報文是容許經過的,但不會爲其創建DHCP監聽綁定表。即L3上只有win10的綁定條目,而沒router
有win11的綁定條目。若是此時同時部署DAI,IPSG,因爲L2交換機不支持這兩項功能,對於L3交換機來講,從L2交換機上過來的數據可能存在IP欺騙和ARP欺騙等攻擊,是不安全的。另外一方面,因爲L3交換機沒有PC2的綁定server
條目,而DAI和IPSG必須依賴DHCP監聽綁定表。所以若是須要在L3交換機上再部署DAI或者IPSG,就不能將L3交換機的Gi0/0設置爲信任端口。可是將Gi0/0口設置爲非信任端口之後,默認狀況下,非信任端口將會丟棄收到的插blog
入了82選項的DHCP請求報文。而從L2交換機過來的DHCP請求報文又正好是被插入了選項82信息的。所以必須配置ip dhcp snooping information option allow-untrusted(全局)命令,不然L3交換機將丟棄這些DHCP請求dns
報文,接在L2交換機上的win11將得不到IP地址。只有配置了該命令之後,L3交換機纔會接收從L2交換機發送的插入了選項82的DHCP報文,併爲這些信息創建綁定條目。
固然上面若是遇到交換機不支持ip dhcp snooping information option allow-untrusted命令能夠有如下兩種解決辦法:
①在不支持的交換機的int vlan 內使用 ip dhcp relay information trusted(vlan內) 命令
②在接入層交換機上面關閉插入option82的功能 no ip dhcp snooping information option
二、因爲思科交換機在開啓dhcp snooping後默認會打開 ip dhcp snooping limit rate 15 功能,上述試驗裏面 L2交換機若是接滿了客戶端,可是L3鏈接L2的接口是非信任接口就存在limit rate 15的功能,同理L2的每一個非信任接口
都是如此,想象一種場景,某時刻48個客戶端 同時發起dhcp request請求報文,因爲L3的下行口默認是限速15個包,這樣將致使大部分客戶端的dhcp request報文被丟棄,因此爲了不此狀況應該在L3的下行接口適當調整
limit rate速度,計算以下:
假設2960爲48口,所以簡單的設置限速爲48*15=720
注意:只有當啓用了dhcp snooping的匯聚交換機或者核心才須要設置 ip dhcp snooping limit rate。若是一個核心或者匯聚交換機下面的接入層交換機衆多,那麼這個限速設置就須要注意了,由於端口最大的limit rate是2048,因此
須要調整接入層端口的limit rate,使其變小 可是須要調整爲一個合理的數值,由於過小了會致使IP地址獲取慢
延伸:
當不開啓L3交換機的ip dhcp snooping information option allow-untrusted時,在L3上面使用debug抓ip dhcp snoong信息會看到不斷有來自L2的報文被丟棄,由於報文攜帶giaddr字段而且是非法的
L3#debug ip dhcp snooping event DHCP Snooping Event debugging is on *May 25 11:05:44.102: %DHCP_SNOOPING-5-DHCP_SNOOPING_NONZERO_GIADDR: DHCP_SNOOPING drop message with non-zero giaddr or option82 value on untrusted port, message type: DHCPDISCOVER, MAC sa: 5000.000b.0000