2008年6月20日 星期五

IP與MAC綁定交換機上支持

網絡管理員︰現在用戶真是不省心,自己改個IP地址;私接AP、忘關DHCP,還有的下個小黑客程序,就想在你內網里試試。單靠交換機能管嗎?

測試工程師︰能!很多交換機上的小功能都可幫大忙。

測試實況︰

IP與MAC綁定

思科的Catalyst 3560交換機支持DHCP Snooping功能,交換機會監听DHCP的過程,交換機會生成一個IP和MAC地址對應表。思科的交換機更進一步的支持IP source guard和Dynamic ARP Inspection功能,這兩個功能任啟一個都可以自動的根據DHCP Snooping監听獲得的IP和MAC地址對應表,進行綁定,防止私自更改地址。

Dynamic ARP Inspection功能還有一個好處是可以防範在2層網絡的中間人攻擊(見圖4)。

思科在DHCP Snooping上還做了一些非常有益的擴展功能,比如Catalyst 3560交換機可以限制端口通過的DHCP數據包的速率,粒度是pps,這樣可以防止對DHCP服務器的進行地址請求的DoS攻擊。另外Catalyst 3560交換機還支持DHCP Tracker,在DHCP請求中插入交換機端口的ID,從而限制每個端口申請的IP地址數目,防止黑客程序對DHCP服務器進行目的為耗盡IP地址池的 攻擊。華碩雖然不能調整速率,但是也會限制DHCP請求的數量。

DHCP(動態主機配置協議)是一種簡化主機IP地址配置管理的TCP/IP標準。該標準為DHCP服務器的使用提供了一種有效的方法︰即管理網絡中客戶機IP地址的動態分配以及啟用網絡上DHCP客戶機的其它相關配置信息。

在基于TCP/IP協議的網絡中,每台計算機都必須有唯一的IP地址才能訪問網絡上的資源,網絡中計算機之間的通信是通過IP地址來實現的,並且通過IP 地址和子網掩碼來標識主計算機及其所連接的子網。在局域網中如果計算機的數量比較少,當然可以手動設置其IP地址,但是如果在計算機的數量較多並且劃分了 多個子網的情況下,為計算機配置IP地址所涉及的管理員工作量和復雜性就會相當繁重,而且容易出錯,如在實際使用過程中,我們經常會遇到因IP地址沖突、 網關或DNS服務器地址的設置錯誤導致無法訪問網絡、機器經常變動位置而不得不頻繁地更換IP地址等問題。

DHCP則很好地解決了上述的問題,通過在網絡上安裝和配置DHCP服務器,啟用了DHCP的客戶機可在每次啟動並加入網絡時自動地獲得其上網所需的IP地址和相關的配置參數。從而減少了配置管理,提供了安全而可靠的配置。

配置DHCP服務的服務器可以為每一個網絡客戶提供一個IP地址、子網掩碼、缺省網關,以及DNS服務器的地址。DHCP避免了因手工設置IP地址及子網 掩碼所產生的錯誤,也避免了把一個IP地址分配給多台主機所造成的地址沖突。降低了IP地址管理員的設置負擔,使用DHCP服務器可以大大地縮短配置網絡 中主機所花費的時間。

但是,隨著DHCP服務的廣泛應用,也產生了一些問題。首先,DHCP服務允許在一個子網內存在多台DHCP服務器,這就意味著管理員無法保證客戶端只能 從管理員所設置的DHCP服務器中獲取合法的IP地址,而不從一些用戶自建的非法DHCP服務器中取得IP地址;其次,在部署DHCP服務的子網中,指定 了合法的IP地址、掩碼和網關的主機也可以正常地訪問網絡,而DHCP服務器卻仍然會有可能將該地址分配給其他主機,這樣就會造成地址沖突,影響IP地址 的正常分配。

針對上述問題,本文給出了一個解決方案,即通過使用Cisco提供的DHCP Snooping技術和Dynamic ARP Inspection技術,可以有效地防止以上問題的發生。

這里首先對兩種技術做一個簡要的介紹,然後將給出一個應用實例加以說明。

二、DHCP Snooping技術DHCP Snooping是一種通過建立DHCP Snooping Binding數據庫,過濾非信任的DHCP消息,從而保證網絡安全的特性。DHCP Snooping就像是非信任的主機和DHCP服務器之間的防火牆。通過DHCP Snooping來區分連接到末端客戶的非信任接口和連接到DHCP服務器或者其他交換機的受信任接口。

DHCP Snooping Binding數據庫包括如下信息︰MAC地址、IP地址、租約時間、binding類型、VLAN ID以及來自本地非信任端口的接口信息,但不包含通過受信任端口互相連接的接口信息。在啟用了DHCP Snooping的VLAN中,如果交換機收到來自非信任端口的DHCP包,交換機將對目的MAC地址和DHCP客戶端的地址進行對比,如果符合則該包可 以通過,否則將被丟棄掉。

在下述情況中,DHCP包將同樣被丟棄︰

l 來自外網或者防火牆的DHCP服務器,包括DHCPOFFER、DHCPACK、DHCPNAK、DHCPLEASEQUERY.

l 來自非信任端口,且目的MAC地址和DHCP客戶端的硬件地址不匹配。

l 交換機收到DHCPRELEASE或者DHCPDECLINE的廣播信息,其MAC地址包含在DHCP snooping binding 數據庫中,但與數據庫中的接口信息不匹配

l 通過DHCP中繼代理轉發的包不包括在內

三、Dynamic ARP Inspection技術Dynamic ARP inspection是一種驗證網絡中ARP包的安全特性,可以阻止、記錄並丟棄非法IP和MAC地址綁定的ARP包。

Dynamic ARP inspection保證只有合法的ARP請求和響應可以傳播。交換機會完成如下工作,截取所有來自非信任端口ARP請求和響應,在更新ARP緩存或傳播數據包之前驗證所截取的數據包IP-MAC地址綁定是否合法,丟棄非法的ARP包。

前面提到,DHCP Snooping會建立一個包含合法IP-MAC地址綁定信息的數據庫,Dynamic ARP inspection基于該數據庫檢驗所截取ARP包的合法性。如果ARP包來自非信任接口,那麼只有合法的可以通過。如果來自受信任端口,將可以直接通 過。


DHCP SNOOPING

Switch(config)#dhcp service 預設是開啟的
Switch(config)#ip dhcp snooping 開啟dhcp snooping的功能
Switch(config)#ip dhcp snooping vlan X 將dhcp snooping套用在那個vlan
Switch(config-if)#ip dhcp snooping trust 設在要往dhcp server上的介面上
Swtich(config-if)#no ip dhcp snooping trust 設在dhcp client 的介面上
此用途是用來阻斷非法的DHCP SERVER的架設。

參考: Cisco 網站

http://www.cisco.com/en/US/products/hw/switches/ps4324/products_configuration_guide_chapter09186a008019d0c8.html

使用的方法是採用DHCP方式為用戶分配IP,然後限定這些用戶隻能使用動態IP的方式,如果改成靜態IP的方式則不能連接上網路;也就是使用了DHCP SNOOPING功能。
  例子:
  version 12.1
  no service pad
  service timestamps debug uptime
  service timestamps log uptime
  no service password-encryption
  service compress-config
  !
  hostname C4-2_4506
  !
  enable password xxxxxxx!
  clock timezone GMT 8
  ip subnet-zero


  no ip domain-lookup
  !
  ip dhcp snooping vlan 180-181 // 對哪些VLAN 進行限制
  ip dhcp snooping
  ip arp inspection vlan 180-181
  ip arp inspection validate src-mac dst-mac ip


  errdisable recovery cause udld
  errdisable recovery cause bpduguard
  errdisable recovery cause security-violation
  errdisable recovery cause channel-misconfig
  errdisable recovery cause pagp-flap
  errdisable recovery cause dtp-flap
  errdisable recovery cause link-flap
  errdisable recovery cause l2ptguard
  errdisable recovery cause psecure-violation
  errdisable recovery cause gbic-invalid
  errdisable recovery cause dhcp-rate-limit
  errdisable recovery cause unicast-flood
  errdisable recovery cause vmps
  errdisable recovery cause arp-inspection
  errdisable recovery interval 30
  spanning-tree extend system-id
  !
  !

  interface GigabitEthernet2/1 // 對該連接埠接入的用戶進行限制,可以下聯交換機
  ip arp inspection limit rate 100
  arp timeout 2
  ip dhcp snooping limit rate 100
  !


  interface GigabitEthernet2/2
  ip arp inspection limit rate 100
  arp timeout 2
  ip dhcp snooping limit rate 100
  !
  interface GigabitEthernet2/3
  ip arp inspection limit rate 100
  arp timeout 2
  ip dhcp snooping limit rate 100
  !
  interface GigabitEthernet2/4
  ip arp inspection limit rate 100
  arp timeout 2
  ip dhcp snooping limit rate 100
  --More--

  編者注:對不需要明確地址的所有人的時候是一個很好的解決辦法。另外,可以查看www.cisco.com
  IP Source Guard
   Similar to DHCP snooping, this feature is enabled on a DHCP snooping untrusted Layer 2 port. Initially, all IP traffic on the port is blocked except for DHCP packets that are captured by the DHCP snooping process. When a client receives a valid IP address from the DHCP server, or when a static IP source binding is configured by the user, a per-port and VLAN Access Control List (PACL) is installed on the port. This process restricts the client IP traffic to those source IP addresses configured in the binding; any IP traffic with a source IP address other than that in the IP source binding will be filtered out. This filtering limits a host's ability to attack the network by claiming neighbor host's IP address.

沒有留言:

張貼留言