arp 不同网段 相同vlan_ARP工作原理,相同网段和不同网段通信过程,代理ARP和ARP的区别,MAC地址为什么不能用来寻址...
ARP
地址解析協(xié)議,即ARP(Address Resolution Protocol),是根據(jù)IP地址獲取物理地址的一個(gè)TCP/IP協(xié)議。主機(jī)發(fā)送信息時(shí)將包含目標(biāo)IP地址的ARP請求廣播到局域網(wǎng)絡(luò)上的所有主機(jī),并接收返回消息,以此確定目標(biāo)的物理地址;收到返回消息后將該IP地址和物理地址存入本機(jī)ARP緩存中并保留一定時(shí)間,下次請求時(shí)直接查詢ARP緩存以節(jié)約資源。
在相同網(wǎng)段的ARP工作原理
如圖,在相同網(wǎng)段的時(shí)候,PC5會廣播ARP請求,然后根據(jù)交換機(jī)的工作原理,如果劃分了VLAN就在相同的VLAN內(nèi)廣播,如果沒有劃分VLAN隔離就,也就是默認(rèn)的VLAN 1,在VLAN 1內(nèi)廣播,相當(dāng)于也是在VLAN內(nèi)廣播。
PC上IP地址配置、MAC地址如圖而且不配置網(wǎng)關(guān)地址,交換機(jī)不做任何配置;
在PC5上ping2.2.2.4,進(jìn)行抓包
1.可以看到PC5源地址46:27:57:a4:05:06,目的地址為廣播的ARP請求包,廣播請求Who has 2.2.2.4?
2.PC6收到ARP廣播包后把PC5的MAC地址和IP地址記入到ARP緩存表中,然后PC6回應(yīng)源地址是46:27:59:05:06:06,目的地址是PC5的46:27:57:a4:05:06單播ARP回應(yīng);
3.PC5收到ARP單播回應(yīng),記入ARP緩存表;然后發(fā)送ICMP的ping包
配置地址如圖,地址掩碼相同,PC的網(wǎng)關(guān)是和路由器直連的路由器接口地址
首先,這里有幾個(gè)問題,路由器有隔離廣播域的功能,那么,當(dāng)PC2廣播ARP請求的時(shí)候,PC3應(yīng)該是收不到的,那么PC2是怎么通過IP地址ARP廣播請求得到PC3的MAC地址的呢?
回答一下上面的問題:
1.PC2得到的并不是PC3的MAC地址,而是網(wǎng)關(guān)R1的g0/0接口的MAC地址;
2.路由器的確隔離廣播域;
首先,和上面沒有配置網(wǎng)關(guān)地址可以看出,PC和路由器都會廣播發(fā)送ARP的request報(bào)文
路由器在他接口的廣播域發(fā)送廣播報(bào)文,PC收到并記入到ARP緩存表;
PC廣播自己的MAC地址,讓網(wǎng)關(guān)能收到,路由器收到記入ARP緩存表;
這樣PC和他的網(wǎng)關(guān)就有對方MAC地址和IP地址對應(yīng)的緩存表;
接下來我們進(jìn)行ping測試
可以看到,在PC6
發(fā)送不同網(wǎng)段的數(shù)據(jù)包的時(shí)候,ARP的作用是尋找網(wǎng)關(guān)的MAC地址,然后通過網(wǎng)關(guān)來轉(zhuǎn)發(fā)不同網(wǎng)段的數(shù)據(jù)包;
這里再說明一下代理ARP和正常ARP是怎么樣的一個(gè)區(qū)別:
代理ARP:
PC沒有設(shè)置網(wǎng)關(guān),在和不同網(wǎng)段通信的時(shí)候,直接發(fā)送ARP廣播包,直接詢問目的網(wǎng)段,而這時(shí),最近一個(gè)網(wǎng)關(guān)路由器充當(dāng)一個(gè)代理的功能,回應(yīng)自己的MAC地址給他,前提是這個(gè)路由器有ARP代理的功能;
正常ARP:
PC設(shè)置了網(wǎng)關(guān),PC在訪問不同網(wǎng)段的時(shí)候,PC就直接會去找網(wǎng)關(guān)發(fā)送的是同網(wǎng)段的數(shù)據(jù)包,在發(fā)送和接受數(shù)據(jù)包的時(shí)候,要找的IP地址對應(yīng)的MAC地址都是這個(gè)網(wǎng)關(guān)的MAC地址;
不管是那個(gè)形式的ARP,不同網(wǎng)段都是要查網(wǎng)關(guān)的MAC地址,代理ARP不會告訴你是他充當(dāng)了你的網(wǎng)關(guān),而是直接告訴你,他就算你要找的那個(gè)目的地,而正常ARP就在你知道他是網(wǎng)關(guān)的前提下,你直接找這個(gè)網(wǎng)關(guān)來幫你轉(zhuǎn)發(fā)數(shù)據(jù);
接下來我們在說一下,為什么一定要知道了MAC地址才能通信:
首先從OSI和TCP/IP的網(wǎng)絡(luò)模型都可以看出,網(wǎng)絡(luò)層也就是IP地址的所工作的位置,是被MAC地址所工作的位置數(shù)據(jù)鏈路層或者網(wǎng)絡(luò)接口層封裝,這是從規(guī)定上解釋,網(wǎng)絡(luò)層通信一定要被底層封裝,也就是要知道了MAC地址后IP地址才能通信;
那為什么不直接用MAC地址在公網(wǎng)來尋址呢?
MAC地址就像身份證一樣,它只唯一的標(biāo)志一個(gè)網(wǎng)絡(luò)接口,它沒有被設(shè)計(jì)為具有尋址功能,因?yàn)镸AC地址是固定的;
在局域網(wǎng),網(wǎng)絡(luò)規(guī)模不是非常大,可以靠MAC地址尋址;
所以我們想想如果一臺PC要靠MAC地址在公網(wǎng)尋址,那這臺PC最近的路由器就得知道這個(gè)數(shù)據(jù)幀的目的MAC地址從那個(gè)接口轉(zhuǎn)發(fā),但是MAC不想IP地址一樣,有掩碼,有對應(yīng)路由協(xié)議學(xué)習(xí),那你如果要通過MAC地址轉(zhuǎn)發(fā), 你就得知道所有網(wǎng)絡(luò)的MAC,這樣才能知道轉(zhuǎn)發(fā)路徑,這是不可能的,這種想法也是極端的,設(shè)計(jì)MAC地址當(dāng)初就不是為了尋址,而是為了身份唯一;
走過路過,點(diǎn)個(gè)三連
一起學(xué)習(xí),一起進(jìn)步
技術(shù)交流:QQ---1740602259
總結(jié)
以上是生活随笔為你收集整理的arp 不同网段 相同vlan_ARP工作原理,相同网段和不同网段通信过程,代理ARP和ARP的区别,MAC地址为什么不能用来寻址...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: server如何调用 thrift_Th
- 下一篇: lisp 计算三点的夹角_已知三点坐标求