日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

地址解析協(xié)議 ARP的高速緩存、分組格式和代理以及arp命令( 四 )


在第18章中,當(dāng)我們看到建立連接的TCP報(bào)文段序列時(shí),會(huì)發(fā)現(xiàn)ARP請(qǐng)求對(duì)應(yīng)于TCP試圖發(fā)送的初始TCP SYN(同步)段 。
注重,在線路上始終看不到TCP的報(bào)文段 。我們能看到的是ARP請(qǐng)求 。直到ARP回答返回時(shí),TCP報(bào)文段才可以被發(fā)送,因?yàn)橛布刂返竭@時(shí)才可能知道 。假如我們用過濾模式運(yùn)行TCP dump命令,只查看TCP數(shù)據(jù),那么將沒有任何輸出 。
4.5.3 ARP高速緩存超時(shí)設(shè)置
在ARP高速緩存中的表項(xiàng)一般都要設(shè)置超時(shí)值(在4.8小節(jié)中,我們將看到治理員可以用ARP命令把地址放入高速緩存中而不設(shè)置超時(shí)值) 。從伯克利系統(tǒng)演變而來的系統(tǒng)一般對(duì)完整的表項(xiàng)設(shè)置超時(shí)值為20分鐘,而對(duì)不完整的表項(xiàng)設(shè)置超時(shí)值為3分鐘(在前面的例子中我們已見過一個(gè)不完整的表項(xiàng),即在以太網(wǎng)上對(duì)一個(gè)不存在的主機(jī)發(fā)出ARP請(qǐng)求 。)當(dāng)這些表項(xiàng)再次使用時(shí),這些實(shí)現(xiàn)一般都把超時(shí)值重新設(shè)為20分鐘 。
Host Requirements RFC表明即使表項(xiàng)正在使用時(shí),超時(shí)值也應(yīng)該啟動(dòng),但是大多數(shù)從伯克利系統(tǒng)演變而來的系統(tǒng)沒有這樣做—它們每次都是在訪問表項(xiàng)時(shí)重設(shè)超時(shí)值 。
4.6 ARP代理
假如ARP請(qǐng)求是從一個(gè)網(wǎng)絡(luò)的主機(jī)發(fā)往另一個(gè)網(wǎng)絡(luò)上的主機(jī),那么連接這兩個(gè)網(wǎng)絡(luò)的路由器就可以回答該請(qǐng)求,這個(gè)過程稱作委托ARP或ARP代理(Proxy ARP) 。這樣可以欺騙發(fā)起ARP請(qǐng)求的發(fā)送端,使它誤以為路由器就是目的主機(jī),而事實(shí)上目的主機(jī)是在路由器的“另一邊” 。路由器的功能相當(dāng)于目的主機(jī)的代理,把分組從其他主機(jī)轉(zhuǎn)發(fā)給它 。
舉例是說明ARP代理的最好方法 。如圖3-10所示,系統(tǒng)sun與兩個(gè)以太網(wǎng)相連 。但是,我們也指出過,事實(shí)上并不是這樣,請(qǐng)把它與封內(nèi)圖1進(jìn)行比較 。在sun和子網(wǎng)140.252.1.1之間實(shí)際存在一個(gè)路由器,就是這個(gè)具有ARP代理功能的路由器使得sun就似乎在子網(wǎng)140.252.1.1上一樣 。具體安置如圖4-6所示,路由器Telebit NetBlazer,取名為netb,在子網(wǎng)和主機(jī)sun之間 。
當(dāng)子網(wǎng)140.252.1.1(稱作gemini)上的其他主機(jī)有一份IP數(shù)據(jù)報(bào)要傳給地址為140.252.1.29 的sun時(shí),gemini比較網(wǎng)絡(luò)號(hào)(140.252)和子網(wǎng)號(hào)(1),因?yàn)樗鼈兌际窍嗤模蚨趫D4-6 上面的以太網(wǎng)中發(fā)送IP地址140.252.1.29的ARP請(qǐng)求 。路由器netb識(shí)別出該IP地址屬于它的一個(gè)拔號(hào)主機(jī),于是把它的以太網(wǎng)接口地址140.252.1.1作為硬件地址往返答 。主機(jī)gemini通過以太網(wǎng)發(fā)送IP數(shù)據(jù)報(bào)到netb,netb通過撥號(hào)SLIP鏈路把數(shù)據(jù)報(bào)轉(zhuǎn)發(fā)到sun 。這個(gè)過程對(duì)于所有140.252.1.1子網(wǎng)上的主機(jī)來說都是透明的,主機(jī)sun實(shí)際上是在路由器netb后面進(jìn)行配置的 。


假如在主機(jī)gemini上執(zhí)行ARP命令,經(jīng)過與主機(jī)sun通信以后,我們發(fā)現(xiàn)在同一個(gè)子網(wǎng)140.252.1.1上的netb和sun的IP地址映射的硬件地址是相同的 。這通常是使用委托ARP的線索 。
gemini % arp -a ;;;;
這里是子網(wǎng)140.252.1.1上其他主機(jī)的輸出行
netb (140.252.1.183) at 0:80:ad:3:6a:80
sun (140.252.1.29) at 0:80:ad:3:6a:80
圖4-6中的另一個(gè)需要解釋的細(xì)節(jié)是在路由器netb的下方(SLIP鏈路)顯然缺少一個(gè)IP地址 。為什么在撥號(hào)SLIP鏈路的兩端只擁有一個(gè)IP地址,而在bsdi和slIP之間的兩端卻分別有一個(gè)IP地址?在3.8小節(jié)我們已經(jīng)指出,用ifconfig命令可以顯示撥號(hào)SLIP鏈路的目的地址,它是140.252.1.183 。NetBlazer不需要知道撥號(hào)SLIP鏈路每一端的IP地址(這樣做會(huì)用更多的IP地址) 。相反,它通過分組到達(dá)的串行線路接口來確定發(fā)送分組的撥號(hào)主機(jī),因此對(duì)于連接到路由器的每個(gè)撥號(hào)主機(jī)不需要用唯一的IP地址 。所有的撥號(hào)主機(jī)使用同一個(gè)IP地址140.252.1.183作為SLIP鏈路的目的地址 。
ARP代理可以把數(shù)據(jù)報(bào)傳送到路由器sun上,但是子網(wǎng)140.252.1.13上的其他主機(jī)是如何處理的呢?選路必須使數(shù)據(jù)報(bào)能到達(dá)其他主機(jī) 。這里需要非凡處理,選路表中的表項(xiàng)必須在網(wǎng)絡(luò)140.252的某個(gè)地方制定,使所有數(shù)據(jù)報(bào)的目的端要么是子網(wǎng)140.252.1.13,要么是子網(wǎng)上的某個(gè)主機(jī),這樣都指向路由器netb 。而路由器netb知道如何把數(shù)據(jù)報(bào)傳到最終的目的端,即通過路由器sun 。

推薦閱讀