1,PC1在不知道PC2 MAC的情況下,需要先廣播一次ARP查詢資訊,詢問網路中是否存在目標IP,並等待目標IP的應答。然後根據應答資料中的MAC來封裝後面的資料包。交換機的工作原理類似,只是交換機是建立一個MAC地址表,記錄物理埠和MAC地址的對應關係。
2,如果不在同一網段,網絡卡會根據掩碼直接檢測出。但PC1仍不知道閘道器的MAC是什麼,所以仍然需要ARP查詢一次。如果無閘道器應答,或者不配置閘道器,則直接丟棄,就會顯示time out。至於閘道器互指,你應該是說三層上的資料吧。只要不是通網段的通訊,PC則統一將資料包交給自己的閘道器,不會將目標MAC定義為遠端PC2的。
3,你如果理解了第2個問題,就理解這個問題是為什麼了。MAC地址只是用在二層網路中,也就是“同網段“,一旦網絡卡判定為不同網段,那PC只能把資料交到自己的閘道器上。這時目標IP是遠端的,而目標MAC則是閘道器。而且在第一次通訊的時候,PC1必須查詢一次目標IP,即使你修改了PC1的掩碼,是的PC1可以傳送ARP查詢。但PC的閘道器會自動判定這個arp不屬於自己的網段,而不做應答,PC1永遠拿不到PC2的MAC。但在你這個實驗環境下,PC1因為之前和PC2有過通訊,可能本地的ARP還未老化,可能可以看到PC2的MAC,也可能會把資料包發出去。此時由於PC2的掩碼不匹配,當資料上升到IP層之後,還是會被PC2丟棄。
另外對你問題3的實驗結果有點疑問,我下載了一下pkt測試一下,192.168.1.0/16,192.168.2.0/24在沒閘道器的情況下是不會通的,你是不是之前的實驗資料沒刪乾淨?
1,PC1在不知道PC2 MAC的情況下,需要先廣播一次ARP查詢資訊,詢問網路中是否存在目標IP,並等待目標IP的應答。然後根據應答資料中的MAC來封裝後面的資料包。交換機的工作原理類似,只是交換機是建立一個MAC地址表,記錄物理埠和MAC地址的對應關係。
2,如果不在同一網段,網絡卡會根據掩碼直接檢測出。但PC1仍不知道閘道器的MAC是什麼,所以仍然需要ARP查詢一次。如果無閘道器應答,或者不配置閘道器,則直接丟棄,就會顯示time out。至於閘道器互指,你應該是說三層上的資料吧。只要不是通網段的通訊,PC則統一將資料包交給自己的閘道器,不會將目標MAC定義為遠端PC2的。
3,你如果理解了第2個問題,就理解這個問題是為什麼了。MAC地址只是用在二層網路中,也就是“同網段“,一旦網絡卡判定為不同網段,那PC只能把資料交到自己的閘道器上。這時目標IP是遠端的,而目標MAC則是閘道器。而且在第一次通訊的時候,PC1必須查詢一次目標IP,即使你修改了PC1的掩碼,是的PC1可以傳送ARP查詢。但PC的閘道器會自動判定這個arp不屬於自己的網段,而不做應答,PC1永遠拿不到PC2的MAC。但在你這個實驗環境下,PC1因為之前和PC2有過通訊,可能本地的ARP還未老化,可能可以看到PC2的MAC,也可能會把資料包發出去。此時由於PC2的掩碼不匹配,當資料上升到IP層之後,還是會被PC2丟棄。
另外對你問題3的實驗結果有點疑問,我下載了一下pkt測試一下,192.168.1.0/16,192.168.2.0/24在沒閘道器的情況下是不會通的,你是不是之前的實驗資料沒刪乾淨?