iT邦幫忙

0

ARP 疑問

匿名 2011-09-19 10:34:0212811 瀏覽

請問 電腦一開機 透過 arp -a 顯示 arp table 有些ip 會出現靜態,有些則是動態?
為什麼會出現這樣的差異? 另外再請問 就我的認知 ARP 更新方式為 先檢查自己的ARP Table 若查不到,再透廣播發送,再由ip 擁有者回覆它的mac, 但有個疑問,公司因某個原因 將原本 10.1.1.5 ip 的server mac 為aa.bb.cc.dd.ee.ff 的機器停用,下線後不再使用,再由其它機器使用10.1.1.5 這個ip mac 為aa.bb.cc.dd.ee.kk, 不過client 一開機卻會自動取得 10.1.1.5這個ip 但mac 是 aa.bb.cc.dd.ee.ff 已下線機器的mac, 造成user 無法連線至 10.1.1.5 , 需要清除 arp table 後才能取得正確的 mac ,但user 重開機後 又會再取得錯誤的 arp table , 請問若要解決這個問題,有什麼解決方式?或是可查詢的方向呢?
(除了GPO 及啓動批次檔以外)

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

14
James
iT邦大師 6 級 ‧ 2011-09-19 12:14:48
最佳解答

使用arp -a查看錯誤的MAC是靜態的或動態的,
如果是靜態的就一定是批次檔或其它SCRIPT寫入的,只能再找看看除了GPO及啟動批次檔外還有沒有其它啟動啟式,必竟可以放啟動自動執行程式的地方太多了。

如果arp -a查到的錯誤MAC是動態的,可以用TCPDUMP等工具監測是那一台主機或網路設備回應了錯誤的MAC

看更多先前的回應...收起先前的回應...
CalvinKuo iT邦大師 7 級 ‧ 2011-09-19 14:10:04 檢舉

我覺得可以先試一下 arp -d,搞不好問題電腦只是之前下了 arp -s指令。

匿名 檢舉

Hi Calvinkuo

謝謝您的回覆, 不過您可能沒看清楚,在問題中已經有註明 清除arp tabel 後可正常,
但重開機不管arp table 是 static or dynamic 但會被清除重設 ,且又會再次取得
錯誤的arp table, 現在要解決的 為什麼會取得的 arp table 10.1.1.5 為什麼會是舊
的mac , 所以依Bruck 說的 靜態就沒辦法透過 tcpdump 查到嗎?
還是還有其它辦法呢?

James iT邦大師 6 級 ‧ 2011-09-19 15:52:35 檢舉

靜態是自己用 arp -s設定的不是從網路學習到的,當然和tcpdump不相干

因為它已經知道10.1.1.5的MAC, 所以不會丟arp broadcast.
所以tcpdump只能看到往10.1.1.5的封包(錯誤的MAC,當然不會有回應)

Ray iT邦大神 1 級 ‧ 2011-09-19 16:51:27 檢舉

你試過把 Switch 重開嗎?
某些 Switch 一旦記住 MAC 之後, 就會直接回應舊的 MAC 給所有人, 不會去更新 Cache buffer...

stonecode iT邦研究生 5 級 ‧ 2011-09-20 11:11:11 檢舉

同意raytracy作法,這種情形連cisco switch也發生過,會ack交換器上舊記憶mac給需求端。

我要發表回答

立即登入回答