請教一個簡單的問題:
我用交換機連接了三臺電腦,ip配置為192.168.1.1和192.168.1.2和192.168.1.3
1.1訪問1.2,1.1應該是用ip+port去訪問1.2吧,那么有以下問題:
二層交換機不認識ip,收到1.1的請求包,會泛洪給1.2和1.3
那么1.2是通過解包看到目的ip是自己去確認是發給自己的資料嗎?
后面1.1再發送的資料包中會包含1.2的mac嗎?這個mac是哪層設備記錄在1.1的主機的?
uj5u.com熱心網友回復:
1.1訪問1.2,先查自己1.1的arp串列里有沒有1.2的mac地址,如果沒有,就發送arp request廣播包問1.2的mac地址是啥,交換機看到這個廣播包后每個埠都會發一份出去,1.2收到這個廣播包后就發送arp reply給1.1告訴他1.2對應的mac地址是啥,交換機收到1.2的包查自己的cam表,找到1.1的mac地址對應的轉發埠后,就單獨的從這個埠發出去,如果沒找到就每個口都發,1.1的網卡看到這個包的mac地址是給自己的,就將包收下并觸發中斷告知系統該接收資料包了,協議堆疊收上來將包決議并將1.2的mac地址寫入到ARP表里,同時將要訪問1.2的包的目的mac地址設定成剛才arp reply過來的地址資訊把包發出去...uj5u.com熱心網友回復:
1.2收到這個廣播包后就發送arp reply給1.1告訴他1.2對應的mac地址是啥
1.2是通過ip確認這個包是發給自己的嗎,因為1.3也可以收到request這個資料包
uj5u.com熱心網友回復:
沒錯,request包是個廣播包,廣播域里的每臺機器都能收到,但是只有1.2的IP能夠匹配上,所以1.3檢查到IP不是給自己的立刻就丟掉這個包。
uj5u.com熱心網友回復:
1.1訪問1.2,先查自己1.1的arp串列里有沒有1.2的mac地址,如果沒有,就發送arp request廣播包問1.2的mac地址是啥,交換機看到這個廣播包后每個埠都會發一份出去,1.2收到這個廣播包后就發送arp reply給1.1告訴他1.2對應的mac地址是啥,交換機收到1.2的包查自己的cam表,找到1.1的mac地址對應的轉發埠后,就單獨的從這個埠發出去,如果沒找到就每個口都發,1.1的網卡看到這個包的mac地址是給自己的,就將包收下并觸發中斷告知系統該接收資料包了,協議堆疊收上來將包決議并將1.2的mac地址寫入到ARP表里,同時將要訪問1.2的包的目的mac地址設定成剛才arp reply過來的地址資訊把包發出去...
1.2收到這個廣播包后就發送arp reply給1.1告訴他1.2對應的mac地址是啥
1.2是通過ip確認這個包是發給自己的嗎,因為1.3也可以收到request這個資料包
沒錯,request包是個廣播包,廣播域里的每臺機器都能收到,但是只有1.2的IP能夠匹配上,所以1.3檢查到IP不是給自己的立刻就丟掉這個包。
arp串列是交換機記錄嗎?還是本地網卡記錄?另外如果訪問的是互聯網的話也會記錄遠程服務器的mac嗎?
uj5u.com熱心網友回復:
1.1訪問1.2,先查自己1.1的arp串列里有沒有1.2的mac地址,如果沒有,就發送arp request廣播包問1.2的mac地址是啥,交換機看到這個廣播包后每個埠都會發一份出去,1.2收到這個廣播包后就發送arp reply給1.1告訴他1.2對應的mac地址是啥,交換機收到1.2的包查自己的cam表,找到1.1的mac地址對應的轉發埠后,就單獨的從這個埠發出去,如果沒找到就每個口都發,1.1的網卡看到這個包的mac地址是給自己的,就將包收下并觸發中斷告知系統該接收資料包了,協議堆疊收上來將包決議并將1.2的mac地址寫入到ARP表里,同時將要訪問1.2的包的目的mac地址設定成剛才arp reply過來的地址資訊把包發出去...
1.2收到這個廣播包后就發送arp reply給1.1告訴他1.2對應的mac地址是啥
1.2是通過ip確認這個包是發給自己的嗎,因為1.3也可以收到request這個資料包
沒錯,request包是個廣播包,廣播域里的每臺機器都能收到,但是只有1.2的IP能夠匹配上,所以1.3檢查到IP不是給自己的立刻就丟掉這個包。
arp串列是交換機記錄嗎?還是本地網卡記錄?另外如果訪問的是互聯網的話也會記錄遠程服務器的mac嗎?
arp串列是你本機協議堆疊要記錄的表,給本地協議堆疊發包時查找用的,只記錄本網段機器的mac,交換機里有它自己維護的cam表。遠程服務器的不會記錄在本地,除非服務器和本機在同一網段內。
uj5u.com熱心網友回復:
請教一個簡單的問題:
我用交換機連接了三臺電腦,ip配置為192.168.1.1和192.168.1.2和192.168.1.3
1.1訪問1.2,1.1應該是用ip+port去訪問1.2吧,那么有以下問題:
二層交換機不認識ip,收到1.1的請求包,會泛洪給1.2和1.3
那么1.2是通過解包看到目的ip是自己去確認是發給自己的資料嗎?
后面1.1再發送的資料包中會包含1.2的mac嗎?這個mac是哪層設備記錄在1.1的主機的?
uj5u.com熱心網友回復:
當然是靠MAC了,交換機有ARP表。
請教一個簡單的問題:
我用交換機連接了三臺電腦,ip配置為192.168.1.1和192.168.1.2和192.168.1.3
1.1訪問1.2,1.1應該是用ip+port去訪問1.2吧,那么有以下問題:
二層交換機不認識ip,收到1.1的請求包,會泛洪給1.2和1.3
那么1.2是通過解包看到目的ip是自己去確認是發給自己的資料嗎?
后面1.1再發送的資料包中會包含1.2的mac嗎?這個mac是哪層設備記錄在1.1的主機的?
傳統的交換機是沒有ARP表的,有的是CAM表,它是MAC的交換機介面的映射表,而不是MAC和IP的映射。隨著技術的發展和網路的要求,一些可管理的交換機才會有ARP表,用來實作更多的功能 。
uj5u.com熱心網友回復:
MAC表足以通信uj5u.com熱心網友回復:
相當于是pc--pc ,看OSI七層的封裝與解封裝,IP與MAC都少一個都不可能通訊從交換機的角度來說,需要拿到源MAC與目的MAC,寫到MAC地址與埠映射表里,這樣通訊可以不用過IP,直接二層通訊。
因為MAC地址表的記錄是有存活時間的,所以,第一次通訊的時候會發廣播去找目的MAC,以便記錄到MAC地址表里,完成以后的通訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/35295.html
標籤:交換及路由技術
上一篇:sdn的環境設計一門網路課程
