最近客戶環境不斷出現無法上網的狀況,查到最後原因就是環境有ARP Spoofing
通常ARP Spoofing 有兩種狀況
1.欺騙Gateway Client 的Mac-address
2.欺騙Client Gateway的Mac-address
比較麻煩的解決方案
1. 在Gateway上寫入Static ARP entry
2. 在Client上寫入Gateway ARP entry
但是這樣有幾個問題會發生
1. 區域網路的環境全部都是DHCP,若Client的設備會不定期變更,就無法寫入Static ARP entry
2. 不斷要更新每個Client的Mac-address,造成管理上的不便
為了解決這兩個問題,找了一下資料若從Switch下手,目前比較有效的方式如下:
1. DHCP snooping
只允許Switch 特定Port 可以接收DHCP封包(offer,ack.等),其餘Port不接受DHCP封包
並且會產生DHCP snopping database (也就是所謂的IP MAC Port紀錄)
2. IP Source Guard
透過dhcp snooping database 來取得每一個Port的IP,這樣可以解決Client自行設定IP問題所造成IP衝突
3.Dynamic ARP Inspection
透過dhcp snooping database 來取得每一個Port的Mac-address,可查看每一個Port Source Mac-address 是否符合dhcp snooping database
使用Zyxel Switch的設定方式如下:
1.網路架構
2.設定DHCP snooping
3.設定IP Source Guard
4.設定Dynamic ARP Inspection
1.網路架構
使用者透過DHCP取得IP 上網
2.設定DHCP snooping
DHCP snooping 有分成Trust Port & Untrusted Port
Trust Ports: 允許DHCP Server封包通過(Port串接到DHCP Server),Switch 會開始學習動態資料庫
Untrusted Ports: 不允許DHCP Server封包通過 (Port 屬於一般PC連接Port)
Configuration >> Security >> Network >> DHCP >> Snooping
Snooping Mode Enable
除了48 Port 接往DHCP Server之外 設定為Trust Port,其餘皆設定為Untrust Port
3.設定IP Source Guard
Configuration >> Security >> Network >> IP Source Guard >> Configuration
Mode Enable
除了48 Port 不開啟,其餘Port 開啟IP Source Guard,並且可以設定DHCP MAX Client
若有需要再部分Port 上設定固定IP,則使用Static Table,設定固定IP及Mac-address
Configuration >> Security >> Network >> ARP Inspection >> Configuration
Mode Enable
除了48 Port 不開啟,其餘選擇Enable
若有需要再部分Port 上設定固定IP,則使用Static Table,設定固定IP及Mac-address
Refer:
http://www.youtube.com/watch?v=C0XHnNGj8fE
ftp://ftp.zyxel.com/XGS1910-48/user_guide/XGS1910-48_.pdf
ftp://ftp.zyxel.com/GS2200-24/user_guide/GS2200-24_.pdf