明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

路由器簡介_ARP原理

[摘要]最簡單的網(wǎng)絡(luò)可以想象成單線的總線, 各個計算機可以通過向總線發(fā)送分組以互相通信。 但隨著網(wǎng)絡(luò)中的計算機數(shù)目增長, 這就很不可行了, 會產(chǎn)生許多問題:  1、帶寬資源耗盡。   2、每臺計算機都浪...

最簡單的網(wǎng)絡(luò)可以想象成單線的總線, 各個計算機可以通過向總線發(fā)送分組以互相通信。 但隨著網(wǎng)絡(luò)中的計算機數(shù)目增長, 這就很不可行了, 會產(chǎn)生許多問題:

  1、帶寬資源耗盡。

  2、每臺計算機都浪費許多時間處理無關(guān)的廣播數(shù)據(jù)。

  3、網(wǎng)絡(luò)變得無法管理, 任何錯誤都可能導(dǎo)致整個網(wǎng)絡(luò)癱瘓。

  4、每臺計算機都可以監(jiān)聽到其他計算機的通信。

  把網(wǎng)絡(luò)分段可以解決這些問題, 但同時你必須提供一種機制使不同網(wǎng)段的計算機可以互相通信, 這通常涉及到在一些ISO網(wǎng)絡(luò)協(xié)議層選擇性地在網(wǎng)段間傳送數(shù)據(jù), 我們來看一下網(wǎng)絡(luò)協(xié)議層和路由器的位置。

  

路由器簡介

  我們可以看到, 路由器位于網(wǎng)絡(luò)層。 本文假定網(wǎng)絡(luò)層協(xié)議為IPv4, 因為這是最流行的協(xié)議, 其中涉及的概念與其他網(wǎng)絡(luò)層協(xié)議是類似的。

  一、路由與橋接

  路由相對于2層的橋接/交換是高層的概念, 不涉及網(wǎng)絡(luò)的物理細節(jié)。 在可路由的網(wǎng)絡(luò)中, 每臺主機都有同樣的網(wǎng)絡(luò)層地址格式(如IP地址), 而無論它是運行在以太網(wǎng)、令牌環(huán)、FDDI還是廣域網(wǎng)。 網(wǎng)絡(luò)層地址通常由兩部分構(gòu)成:網(wǎng)絡(luò)地址和主機地址。

  網(wǎng)橋只能連接數(shù)據(jù)鏈路層相同(或類似)的網(wǎng)絡(luò), 路由器則不同, 它可以連接任意兩種網(wǎng)絡(luò), 只要主機使用的是相同的網(wǎng)絡(luò)層協(xié)議。

  二、連接網(wǎng)絡(luò)層與數(shù)據(jù)鏈路層

  網(wǎng)絡(luò)層下面是數(shù)據(jù)鏈路層, 為了它們可以互通, 需要“粘合”協(xié)議。 ARP(地址解析協(xié)議)用于把網(wǎng)絡(luò)層(3層)地址映射到數(shù)據(jù)鏈路層(2層)地址, RARP(反向地址解析協(xié)議)則反之。

  雖然ARP的定義與網(wǎng)絡(luò)層協(xié)議無關(guān), 但它通常用于解析IP地址;最常見的數(shù)據(jù)鏈路層是以太網(wǎng)。 因此下面的ARP和RARP的例子基于IP和以太網(wǎng), 但要注意這些概念對其他協(xié)議也是一樣的。

  1、地址解析協(xié)議

  網(wǎng)絡(luò)層地址是由網(wǎng)絡(luò)管理員定義的抽象映射, 它不去關(guān)心下層是哪種數(shù)據(jù)鏈路層協(xié)議。 然而, 網(wǎng)絡(luò)接口只能根據(jù)2層地址來互相通信, 2層地址通過ARP從3層地址得到。

  并不是發(fā)送每個數(shù)據(jù)包都需要進行ARP請求, 回應(yīng)被緩存在本地的ARP表中, 這樣就減少了網(wǎng)絡(luò)中的ARP包。 ARP的維護比較容易, 是一個比較簡單的協(xié)議。

  2、簡介

  如果接口A想給接口B發(fā)送數(shù)據(jù), 并且A只知道B的IP地址, 它必須首先查找B的物理地址, 它發(fā)送一個含有B的IP地址的ARP廣播請求B的物理地址, 接口B收到該廣播后, 向A回應(yīng)其物理地址。

  

路由器簡介

  注意, 雖然所有接口都收到了信息, 但只有B回應(yīng)該請求, 這保證了回應(yīng)的正確且避免了過期的信息。 要注意的是, 當(dāng)A和B不在同一網(wǎng)段時, A只向下一跳的路由器發(fā)送ARP請求, 而不是直接向B發(fā)送。

  

路由器簡介

  下圖為接收到ARP分組后的處理, 注意發(fā)送者的對被存到接收ARP請求的主機的本地ARP表中, 一般A想與B通信時, B可能也需要與A通信。

  

路由器簡介

  3、IP地址沖突

  ARP產(chǎn)生的問題中最常見的是IP地址的沖突, 這是由于兩個不同的主機IP地址相同產(chǎn)生的, 在任何互聯(lián)的網(wǎng)絡(luò)中, IP地址必須是唯一的。 這時會收到兩個ARP回應(yīng), 分別指出了不同的硬件地址, 這是嚴重的錯誤, 沒有簡單的解決辦法。

  為了避免出現(xiàn)這類錯誤, 當(dāng)接口A初試化時, 它發(fā)送一個含有其IP地址的ARP請求, 如果沒有收到回應(yīng), A就假定該IP地址沒有被使用。 我們假定接口B已經(jīng)使用了該IP地址, 那么B就發(fā)送一個ARP回應(yīng), A就可以知道該IP地址已被使用, 它就不能再使用該IP地址, 而是返回錯誤信息。 這樣又產(chǎn)生一個問題, 假設(shè)主機C含有該IP地址的映射, 是映射到B的硬件地址的, 它收到接口A的ARP廣播后, 更新其ARP表使之指向A的硬件地址。 為了解決這個錯誤, B再次發(fā)送一個ARP請求廣播, 這樣主機C又更新其ARP表再次指向B的硬件地址。 這時網(wǎng)絡(luò)的狀態(tài)又回到先前的狀態(tài), 有可能C已經(jīng)向A發(fā)送了應(yīng)該發(fā)送給B的IP分組, 這很不幸, 但是因為IP提供的是無保證的傳輸, 所以不會產(chǎn)生大的問題。

  4、管理ARP緩存表

  ARP緩存表是對的列表, 根據(jù)IP地址索引。 該表可以用命令arp來管理, 其語法包括:

  向表中添加靜態(tài)表項 -- arp -s

  從表中刪除表項 -- arp -d

  顯示表項 -- arp -a

  ARP表中的動態(tài)表項(沒有手動加入的表項)通常過一段時間自動刪除, 這段時間的長度由特定的TCP/IP實現(xiàn)決定。

  5、靜態(tài)ARP地址的使用 www.arpun.com

  靜態(tài)ARP地址的典型使用是設(shè)置獨立的打印服務(wù)器, 這些設(shè)備通常通過telnet來配置, 但首先它們需要一個IP地址。 沒有明顯的方法來把此信息告訴該設(shè)備, 好象只能使用其串口來設(shè)置。 但是, 這需要找一個合適的終端和串行電纜, 設(shè)置波特率、奇偶校驗等, 很不方便。

  假設(shè)我們想給一個打印服務(wù)器設(shè)置IP地址P-IP, 并且我們知道其硬件地址P-hard, 在工作站A上創(chuàng)建一個靜態(tài)ARP表項把P-IP映射到P-hard, 這樣, 雖然打印服務(wù)器不知道自己的IP地址, 但是所有指向P-IP的數(shù)據(jù)就將被送到P-hard。 我們現(xiàn)在就可以telnet到P-IP并配置其IP地址了, 然后再刪除該靜態(tài)ARP表項。

  

路由器簡介

  有時會在一個子網(wǎng)里配置打印服務(wù)器, 而在另一個子網(wǎng)里使用它, 方法與上面類似。 假設(shè)其IP地址為P-IP, 我們分配一個本網(wǎng)的臨時IP地址T-IP給它, 在工作站A上創(chuàng)建臨時ARP表項把T-IP映射到P-hard, 然后telnet到T-IP, 給打印服務(wù)器配以IP地址P-IP。 接下來就可以把它放到另一個子網(wǎng)里使用了, 別忘了刪除靜態(tài)ARP表項。

  

路由器簡介

  6、代理ARP

  可以通過使用代理ARP來避免在每臺主機上配置路由表, 在使用子網(wǎng)時這特別有用, 但注意, 不是所有的主機都能理解子網(wǎng)的。 基本的思想是即使對于不在本子網(wǎng)的主機也發(fā)送ARP請求, ARP代理服務(wù)器(通常是網(wǎng)關(guān))回應(yīng)以網(wǎng)關(guān)的硬件地址, 見下圖, 注意與上面的圖比較一下。

  代理ARP簡化了主機的管理, 但是增加了網(wǎng)絡(luò)的通信量(不是很明顯), 并且可能需要較大的ARP緩存, 每個不在本網(wǎng)的IP地址都被創(chuàng)建一個表項, 都映射到網(wǎng)關(guān)的硬件地址。 在使用代理ARP的主機看來, 世界就象一個大的沒有路由器物理網(wǎng)絡(luò)。

  

路由器簡介


上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識,學(xué)習(xí)了安全知識,幾乎可以讓你免費電腦中毒的煩擾。




標(biāo)簽:路由器簡介_ARP原理