【IP】Linux中檢測IP地址衝突
阿新 • • 發佈:2018-11-12
在Windows系統中,如果本地網路IP地址出現衝突,會出現圖示提示。
在Linux系統中,並沒有提供相關的功能,如果本地網路採用靜態IP地址配置,出現比較奇怪的網路連線問題,如ssh連線復位,可以考慮檢測一下是否是出現了IP地址衝突問題。
arping命令提供了檢測地址衝突的功能。
arping命令
arping命令是用於傳送arp請求到一個相鄰主機的工具,arping使用arp資料包,通過ping命令檢查裝置上的硬體地址。能夠測試一個ip地址是否是在網路上已經被使用,並能夠獲取更多裝置資訊。功能類似於pingarping命令是用於傳送ARP請求到一個相鄰主機的工具,通過ARP響應報文檢查裝置上的硬體地址。它能夠測試一個IP地址是否是在網路上已經使用,並能夠獲取更多裝置資訊。該功能類似於ping命令。
在你電腦ping一下那個地址,然後會回覆的ping包的源mac地址。
arping命令選項:
-b:用於傳送乙太網廣播幀(FFFFFFFFFFFF)。arping一開始使用廣播地址,在收到響應後就使用unicast地址。 -q:quiet output不顯示任何資訊; -f:表示在收到第一個響應報文後就退出; -timeout:設定一個超時時間,單位是秒。如果到了指定時間,arping還沒到完全收到響應則退出; -c count:表示傳送指定數量的ARP請求資料包後就停止。如果指定了deadline選項,則arping會等待相同數量的arp響應包,直到超時為止;-s source:設定arping傳送的arp資料包中的SPA欄位的值。如果為空,則按下面處理,如果是DAD模式(衝突地址探測),則設定為0.0.0.0,如果是Unsolicited ARP模式(Gratutious ARP)則設定為目標地址,否則從路由表得出; -I interface:設定ping使用的網路介面。
IP地址衝突檢測
在出問題的主機上,可以使用"arping -I ethN x.x.x.x"命令(其中x.x.x.x為本介面的IP地址)檢測地址衝突,如果沒有任何輸出,則表示本IP地址無衝突。如果有衝突的話,該命令會顯示衝突的IP地址使用的MAC地址。
eg1:
如現在我的win7系統的ip地址192.168.23.44
我在cmd命令上輸入 ipconfig/all查詢我當前的mac地址
在另外一臺linux環境上查看回復 當前回覆是從對應的mac回覆 說明當前並沒有ip衝突的問題
eg2:
arping 192.168.1.X from 192.168.X.X eth0
可以看到當前從192.168.1.X的回覆的mac地址,如果當前的mac地址回覆的和你設定的mac不符,則當前ip地址有衝突