發(fā)布時間: 2017-06-16 15:25:26
1、沒有網(wǎng)關(guān)的情況下,它會對當(dāng)前網(wǎng)絡(luò)進(jìn)行ARP查詢,詢問訪問的目的地址的MAC地址信息,如果這個時候,網(wǎng)關(guān)知道怎么去這個目的地址,并且開啟了代理ARP的功能,那么就會回應(yīng)這個ARP響應(yīng),那么回應(yīng)的內(nèi)容就是這個目的地址,MAC地址是自己,這對于PC或者主機(jī)路由器來說是不知道的,它就認(rèn)為這個MAC是對應(yīng)目的主機(jī),每次發(fā)送去往這個目的地址的時候,二層就封裝這個目的MAC,然后發(fā)送出去。
2、有網(wǎng)關(guān)的情況下,它只會詢問網(wǎng)關(guān)的MAC是多少,如果網(wǎng)關(guān)響應(yīng)了后,那么PC或主機(jī)路由器,就會把這個數(shù)據(jù)包發(fā)送出去,它不管網(wǎng)關(guān)是否知道怎么去往這個目的地址不。
1、在沒有網(wǎng)關(guān)的情況下,把R1的代理ARP給關(guān)閉了,默認(rèn)是打開的,并且把ARP 緩存清掉 shutdown接口,clear arp
不通,因為R1的接口已經(jīng)關(guān)閉了代理ARP了,所以不不會去響應(yīng)這個ARP的Request。
2、R2上設(shè)置網(wǎng)關(guān)為R1的接口,并且發(fā)送一個去往2.2.2.2的telnet的會話,看TCP會話是否會發(fā)出去,如果出去了,就證明之前說的是對的,不管網(wǎng)關(guān)是否知道目的地可達(dá),PC或主機(jī)路由器都會發(fā)送。
這時候開始轉(zhuǎn)變,telnet 3.3.3.3
telnet3.3.3.3 ,提示目的不可達(dá),或者網(wǎng)關(guān)和主機(jī)是down的。
首選,路由器發(fā)送ARP的Request選為12.1.1.1(GW)的 MAC地址是多少。R1響應(yīng)這個ARP的請求。緊接著一個TCP會話發(fā)送出去,協(xié)議得出遠(yuǎn)程主機(jī)不可達(dá)。
主機(jī)中的網(wǎng)關(guān),起到橋接兩個網(wǎng)段通信(代理arp),目標(biāo)數(shù)據(jù)二層封裝網(wǎng)關(guān)mac地址。至于三層目的網(wǎng)段,是否可達(dá),決定不了。
上一篇: Linux的date命令用法