輕鬆運維之防止私自啓用DHCP服務

    老實說,做一個網絡管理員真不是一件輕鬆的事情,你在工作中總是會遇到各種各樣的問題,這其中不僅僅有來自外部的***,甚至相當一部分是來自你所在企業內部用戶的威脅。在企業裏面,總是會有一部分用戶或者出於無知,或者是故意的引發一些IT問題,給你的工作帶來困擾。

    想想這個情景吧,某個內部用戶私自接入了一臺路由器並在不知道的情況下啓用了DHCP 服務,你很容易就能想到接下來會發生什麼?你所管理的網絡裏面可能會有一半以上的用戶都無法聯網了,大家的工作都被迫停頓了下來,因爲他們的電腦獲取了錯誤的IP地址。好了,現在是最需要你的時候了,你得在一堆用戶的不滿聲中處理問題,找出是誰做了這麼糟糕的事情並馬上制止他愚蠢的行爲,但查出問題源頭好像也不是一件很簡單的事情,如果不幸的話,可能在你還沒找到該用戶的時候,就已經被大家的口水淹沒了。呵呵 ,想想都覺得恐怖,由於用戶的錯誤讓我們的工作變成了惡夢。

    當然,做爲一個網絡管理員,我們肯定不能聽天由命地任由這種事情發生,得想點什麼辦法才行。那麼,對此我們能有什麼解決方法呢?
    其實,就解決這類問題的方法來說,我想更好的方法應該是從根源上去防止,如通過培訓來提升用戶的IT素質,還有制定明確的IT規範並與行政處罰掛鉤來處理,而不能對於什麼問題都想着用技術來解決,畢竟技術不是萬能的,沒辦法解決所有問題,一個制度規範混亂的企業不管有多好的設備和技術都不可能做好管理的。
     在做好上面事情以後,我們可以把技術做爲管理的輔助工具,像這篇文章要介紹的DHCP Snooping技術,它就可以很好的解決用戶私開DHCP的問題。除此之外,它還可以與DAI(Dynamic ARP Inspection)技術相結合,來防止用戶私自設定IP地址,這也是很多網絡管理員頭痛的一個問題。(想想用戶把IP改成服務器地址的情景吧。)
 
 關於DHCP Snooping
·   DHCP監聽(DHCP Snooping)是一種DHCP安全特性。當交換機開啓了 DHCP-Snooping後,將開始對DHCP報文進行偵聽。DHCP-Snooping允許將某個物理端口設置爲信任端口或不信任端口。信任端口可以正常接收並轉發DHCP Offer報文,而不信任端口會將接收到的DHCP Offer報文丟棄。
    我們可以在接入層交換機上將PC、網絡打印機等設備所連端口設爲非信任端口,將連接到DHCP 服務器或連接匯聚交換機的上行端口設爲信任端口。這樣,可以完成交換機對假冒DHCP Server的屏蔽作用,確保客戶端從合法的DHCP Server獲取IP地址。
    另外,DHCP監聽還有一個非常重要的作用就是建立一張DHCP監聽綁定表(
DHCP Snooping Binding)。一旦一個連接在非信任端口的客戶端獲得一個合法的DHCP Offer,交換機就會自動在DHCP監聽綁定表裏添加一個綁定條目,內容包括了該非信任端口的客戶端IP地址、MAC地址、端口號、VLAN編號、租期等信息。(如下圖) 這張表爲進一步部署動態ARP檢測(DAI)提供了依據,DAI將檢測從非信任端口收到的arp包,然後對照該數據包的源IP與源MAC地址是否與表裏的數據相同,如果不符合則丟棄該數據包,這樣當用戶手動更改IP地址後,該計算機將無法連入企業網絡。在這裏我就不多做介紹,大家有興趣可以自己去網上了解。

 

     現在,我們來看一下DHCP Snooping在交換機上的配置。
     如下圖拓撲所示,這是一個多交換機的環境,由企業指定的DHCP 服務器提供DHCP 服務,禁止其他用戶私自搭建DHCP服務器。

 

 

3560交換機配置
switch(config)# ip dhcp snooping                  ;在全局模式下啓用DHCP Snooping            

switch(config)# ip dhcp snooping vlan 1 
       ;定義哪些 VLAN啓用 DHCP Snooping功能
 
switch(config)#int  fa0/1                                ;dhcp服務器所在端口

switch(config-if)# ip dhcp snooping trust        ;定義其爲信任端口
 
 
switch(config)#int fa0/2                                  ;下聯2960端口,設爲信任端口
 
switch(config)#ip dhcp snooping trust              ;定義爲信任端口
 
switch(config)#inf range f0/3 – 24                    ;其他端口

switch(config-if)#no ip dhcp snooping trust        ;設爲非信任端口,此爲默認設置
  
 
 
2960交換機DHCP Snooping配置
switch(config)# ip dhcp snooping                     ;在全局模式下啓用DHCP Snooping            

switch(config)# ip dhcp snooping vlan 1            
;定義VLAN1啓用 DHCP Snooping
 
 
switch(config)#int  fa0/1                                     ;上聯3560端口

switch(config-if)# ip dhcp snooping trust             ;定義其爲信任端口
 
switch(config)#int range fa0/2 – 24                      ;其它端口

switch(config-if)#no ip dhcp snooping trust             ;設爲非信任端口  
 
Switch(config)#ip dhcp snooping verify mac-address
 
; 檢測非信任端口收到的DHCP請求報文的源MAC和CHADDR字段是否相同,以防止DHCP耗竭***,該功能默認即爲開啓
 
 


 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章