1拓撲

1 實現控制只能獲取企業內部合法的DHCP服務分配的地址,而其余的DHCP服務器則不能通過。
說明:為什么需要該技術呢,因為DHCP的工作原理是最先響應的服務器,PC就獲取該服務器分配的IP地址,這樣的話有些惡意的人把網關指向自己的電腦,然后通過抓包工具等實現抓包分析等功能,這樣造成不安全,另外就是網段不一致了,導致訪問公司內網或外網出現問題,所以我們必須杜絕該問題的出現。

正常情況下,內網的用戶都是通過內部部署的服務集集群正確獲取到IP地址,但是如果有一個人無意或者惡意的放了一臺設備在接入層,而該設備正好附帶DHCP功能【比如無線路由器等】,那么導致下面的用戶都會獲取到該服務器提供的地址段,而不是內部規劃好的。
當有惡意DHCP服務器出現的時候【查看】


可以看到這次獲得了172.16.1.0網段,這個就是通過惡意的DHCP服務器提供的。那么導致的結果就是

訪問都失敗。
2 解決辦法
(1)全局 DHCP Snooping功能
[boss]dhcp enable
[boss]dhcp snooping enable
(2)面向用戶的接口開啟DHCP Snooping功能
[boss]port-group 1
[boss-port-group-1]dhcp snooping enable
說明:該接口組之前已經定義過了,可以直接在里面調用即可。
(3)上聯接口【連接DHCP服務器接口】開啟Trust功能
[boss]port-group 2
[boss-port-group-2]dhcp snooping trusted
說明:上聯接口之前定義在port-group2中,開啟即可,注意這里連接核心A與B接口都需要開啟。
(4)測試結果

可以看到Renew一下后,又正常獲取到了IP地址了。
說明:DHCP Snooping的工作原理就是當開啟DHCP Snooping功能后,接口處于Trust的狀態則接收對應的DHCP ACK與Offer包,而其余接口默認處于Untrust中,所以會丟棄這些包。

可以看到有動態的表項,后續的安全部署可以根據這表項來進行安全控制
3 部署用戶只能通過DHCP獲取的情況下,能夠訪問內網與外網,而人為定義則不行。
說明:有時候客戶會私自定義IP地址,但是客戶又不是非常懂,那么導致可能與網關或者其他PC的地址沖突了,所以我們這里必須杜絕該種情況出現,必須通過DHCP獲取地址才能訪問內網與外網。

手動定義地址,進行訪問。

可以看到可以正常訪問。
4 解決辦法
開啟DAI功能+ip source guead
(1)部署DAI
[boss]port-group 1
[boss-port-group-1]arp anti-attack check user-bind enable
說明:默認是檢查IP 、mac、VLAN信息,可以修改arp anti-attack check user-bind check-item ip-address mac-address vlan
可以看到當自己定義IP地址后,會不訪問。

(2)部署ip source guead
說明:為什么需要部署IP source guead呢,因為DAI有一個因為存在,DAI的功能是在PC第一次訪問的時候,需要放松ARP信息,而DAI就是檢測ARP信息的,如果本地沒有對應DHCP Snooping表項,就丟棄ARP報文。那么如果客戶知道了網關的MAC 地址,然后手工定義一個ARP【對于懂一點技術的人來說,也是非常簡單的。】

比如手動指定了一個靜態映射

可以看到就可以訪問了。
[boss]port-group 1
[boss-port-group-1]ip source check user-bind enable
說明:開啟ip source功能,檢查,它會根據DHCP Snooping表項來檢查數據包的IP、MAC、VLAN是否與綁定表有,如果沒有就丟棄。

可以看到,就直接丟棄了。
(3)靜態綁定表項
說明:為什么需要靜態綁定呢,因為有時候有些打印機之類的是固定IP地址,所以必須允許它們通過。
[boss]user-bind static ip-address 192.168.44.1 mac-address 4422-1111-3423 vlan 40
添加一個靜態表項,這樣就可以通過了。

可以看到沒問題了。