1. 程式人生 > >第7章 網路層協議(3)_ARP協議

第7章 網路層協議(3)_ARP協議

3. ARP協議

3.1 ARP(Address Resolution Protocol)協議的工作過程和安全隱患

(1)計算機A和C通訊之前,先檢查ARP快取中是否有計算機C的IP地址對應的MAC地址。如果沒有,就啟用ARP協議傳送一個ARP廣播請求解析192.168.0.4的MAC地址。ARP廣播幀目標MAC地址是FF-FF-FF-FF-FF-FF

(2)交換機將ARP廣播幀轉發到同一個網路的全部埠。這意味著同一個網段中的計算機都能夠接到該ARP請求

(3)正常情況下,只有計算機C收到該ARP請求後傳送ARP應答訊息。還有不正常情況,網路中任何一臺計算機都可以傳送ARP應答

,有可能告訴計算機A一個錯誤的MAC地址(ARP欺騙

(4)計算機A將解析到的結果儲存在ARP快取中(可通過arp -a命令檢視),並保留一段時間,後續通訊就使用快取的結果,就不再發送ARP請求解析MAC地址。

3.2 ARP欺騙之“網路執法官”

(1)“網路執法官”區域網管理輔助軟體

  可以通過週期性地解析本網段IP地址和MAC地址來統計哪些計算機線上和下線,它能夠利用ARP欺騙來禁止與“關鍵主機”的通訊或禁止與網路中所有計算機通訊,並指定哪些地址是“關鍵主機”。

(2)“網路執法官”測試:禁止區域網內的某臺計算機訪問Internet

 

  ①選擇“監控範圍”

(如192,168.80.1-192.168.80.254)並新增。這時軟體會發送ARP請求給這個範圍的每一個地址,通過統計收到的ARP響應,來發現網段有多少計算機線上。

  ②設定“關鍵主機”:“設定”選單→“關鍵主機”→指定IP並新增。這裡可以指定閘道器地址。

  ③限制計算機A與關鍵主機(D)通訊:選中計算機A→右鍵“設定許可權”→選擇“發現該使用者與網路連線即進行管理” →並選擇“禁止與關鍵主機的TCP/IP連線”。如此,該計算機就不能與閘道器通訊,即不能訪問Internet。可以通過arp –a 命令檢視到,該計算機A解析到閘道器的mac地址是一個錯誤的地址。

3.3 判斷和防止ARP欺騙的方法

(1)故障現象:計算機不能和同一網段的某個計算機通訊,但和其他計算機通訊正常如果不是雙方防火牆設定引起,就很可能是ARP欺騙引起的網路故障

(2)原因分析:如前面計算機A不能ping通閘道器,在排除了防火牆設定導致後,可以通過arp –a檢視快取的mac地址表中閘道器地址是否正確。如果不一致,就是ARP欺騙造成的網路故障了。

(3)解決方案為計算機A新增MAC地址靜態對映

  ①arp -s 192.168.80.2 00-50-56-FD-90-E2 (閘道器IP和mac地址)。

  ②由於A和閘道器通訊不再需要ARP協議來解析對方的MAC地址,“網路執行官”就不能通過ARP執行欺騙,網路就會通。

  ③說明:刪除對映arp -d 192.168.80.2

3.4 擴充套件思考

(1)計算機A和B能否互通?

  ①A和B連線在同一交換機上。但所處網段不同。

  ②A和B互設對方為自己的閘道器(否則是不通。注意,這與第5章的5.2節案例是不同的!)

(2)互通的原因

  ①當計算機A ping 計算機B時,由於IP不在同一網段。儘管連線在同一交換機,但仍需要閘道器來轉發。因此A就傳送ARP請求(廣播)閘道器B的MAC地址。由於同一交換機,這個廣播會被轉發到交換機的各個介面上,因此B會收到這個請回,如此A就能解釋出B的MAC地址。因此A能ping通B。

  ②同理,B也能ping通A。