ARP協(xié)議的反向和代理
學(xué)了不少關(guān)于ARP協(xié)議的相關(guān)知識(shí),不知道大家掌握的如何。那么今天我們?cè)賮?lái)學(xué)一下有關(guān)于ARP協(xié)議的反向和代理的相關(guān)內(nèi)容。首先還是來(lái)對(duì)這兩個(gè)概念的認(rèn)識(shí)。
反向ARP協(xié)議
反向ARP(Reverse ARP,RARP)用于把物理地址(MAC地址)轉(zhuǎn)換到對(duì)應(yīng)的 IP 地址。例如,在無(wú)盤(pán)工作站啟動(dòng)的時(shí)候,因?yàn)闊o(wú)法從自身的操作系統(tǒng)獲得自己的IP地址配置信息。這時(shí),無(wú)盤(pán)工作站可發(fā)送廣播請(qǐng)求獲得自己的IP地址信息,而RARP服務(wù)器則響應(yīng)IP請(qǐng)求消息-為無(wú)盤(pán)工作站分配1個(gè)未用的IP地址(通過(guò)發(fā)送RARP應(yīng)答包)。
反向ARP(RARP)在很大程度上已被BOOTP、DHCP所替代,后面這兩種協(xié)議對(duì)RARP的改進(jìn)是可以提供除了IP地址外的其它更多的信息,如默認(rèn)網(wǎng)關(guān)、DNS服務(wù)器的IP地址等信息。
代理ARP協(xié)議
代理ARP(PROXY ARP)也被稱(chēng)作混雜ARP(Promiscuous ARP)(RFC 925、1027)一般被像路由器這樣的設(shè)備使用--用來(lái)代替處于另一個(gè)網(wǎng)段的主機(jī)回答本網(wǎng)段主機(jī)的ARP請(qǐng)求。
下面是代理ARP的應(yīng)用之一,如圖所示,主機(jī)PC1(192.168.20.66/24)需要向主機(jī)PC2(192.168.20.20/24)發(fā)送報(bào)文,因?yàn)橹鳈C(jī)PC1不知道子網(wǎng)的存在且和目標(biāo)主機(jī)PC2在同一主網(wǎng)絡(luò)網(wǎng)段,所以主機(jī)PC1將發(fā)送ARP協(xié)議請(qǐng)求廣播報(bào)文請(qǐng)求192.168.20.20的MAC地址。這時(shí),路由器將識(shí)別出報(bào)文的目標(biāo)地址屬于另一個(gè)子網(wǎng)(注意,路由器的接口IP地址配置的是28位的掩碼),因此向請(qǐng)求主機(jī)回復(fù)自己的硬件地址(0004.dd9e.cca0)。
之后,PC1將發(fā)往PC2的數(shù)據(jù)包都發(fā)往MAC地址0004.dd9e.cca0(路由器的接口E0/0),由路由器將數(shù)據(jù)包轉(zhuǎn)發(fā)到目標(biāo)主機(jī)PC2。(接下來(lái)路由器將為PC2做同樣的代理發(fā)送數(shù)據(jù)包的工作)。這種ARP協(xié)議使得子網(wǎng)化網(wǎng)絡(luò)拓?fù)鋵?duì)于主機(jī)來(lái)說(shuō)時(shí)透明的(或者可以說(shuō)是路由器以一個(gè)不真實(shí)的PC2的MAC地址欺騙了源主機(jī)PC1)。
代理ARP