自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用最簡單網(wǎng)絡(luò) 學(xué)習(xí)IP和ARP協(xié)議

原創(chuàng)
網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
計算機網(wǎng)絡(luò)知識的學(xué)習(xí),離不開多次試驗的實踐學(xué)習(xí)。但昂貴的網(wǎng)絡(luò)設(shè)備,對許多想搭建真實網(wǎng)絡(luò)環(huán)境的人又望而卻步。不過,現(xiàn)在我們借助簡單的設(shè)備搭建所需的網(wǎng)絡(luò)環(huán)境也完全是有可能的。

【51CTO.com 獨家特稿】計算機網(wǎng)絡(luò)知識的學(xué)習(xí),離不開多次試驗的實踐學(xué)習(xí)。但昂貴的網(wǎng)絡(luò)設(shè)備,對許多想搭建真實網(wǎng)絡(luò)環(huán)境的人又望而卻步。不過,現(xiàn)在我們借助簡單的設(shè)備搭建所需的網(wǎng)絡(luò)環(huán)境也完全是有可能的。下面的一個實例所需的設(shè)備就非常少,只需兩臺電腦,和一根交叉網(wǎng)線即可。若你覺得具備這些設(shè)備還是有些困難,那只用一臺電腦也完全可以,只需在網(wǎng)上下載一個VMware虛擬機軟件,安裝后進行相應(yīng)的設(shè)置,就可以進行下面的實例學(xué)習(xí)。

不過下面提到的命令和參數(shù),都是在有兩臺電腦的實驗環(huán)境中完成的。操作系統(tǒng)使用的是Win7,兩臺電腦都沒有配置默認網(wǎng)關(guān)。還需要注意的就是連接兩臺電腦用的是交叉網(wǎng)線,網(wǎng)線一端是T568A標(biāo)準(zhǔn)的線序,另一端是T568B標(biāo)準(zhǔn)的線序,不能使用直通線。下面就一步步介紹實驗過程中碰到的問題,和解決問題的方法,期間也就很自然的學(xué)習(xí)了TCP/IP協(xié)議族中的IP和ARP協(xié)議

(圖1 位于同一網(wǎng)絡(luò)中的兩臺主機)

(圖1 位于同一網(wǎng)絡(luò)中的兩臺主機)

一、如圖1所示,這種實驗環(huán)境很簡單,想必大家都試驗過。它也很容易理解,處在同一網(wǎng)絡(luò)中的兩臺PC,不用配置網(wǎng)關(guān),也能夠互相通信。

(圖2 位于不同網(wǎng)絡(luò)中的兩臺主機)

(圖2 位于不同網(wǎng)絡(luò)中的兩臺主機)

二、如圖2所示,兩臺PC在不同的網(wǎng)絡(luò)中,但還要讓PC1和PC2之間能互相ping通。這種網(wǎng)絡(luò)實驗環(huán)境,可能很多人沒有深入研究過,下面就通過一些實驗截圖一步步分析:

(圖3  PC1不能ping通PC2)

(圖3  PC1不能ping通PC2)#p#

1、如圖3所示,在PC1上ping主機PC2是不通的。若能保證連接兩臺PC的網(wǎng)線沒有故障,ping不通的話,問題肯定首先出在PC1的路由上。

(圖4 主機PC1中的路由表)

(圖4 主機PC1中的路由表)

2、如圖4所示,在PC1的"命令行"中,執(zhí)行"route print"命令,就能看到PC1主機上的路由表,在其中看不到,到達目的網(wǎng)絡(luò)172.16.0.0/16的路由。所以,在PC1上執(zhí)行ping 172.16.1.1命令后,PC1首先在它的路由表中查找有沒有到達網(wǎng)絡(luò)172.16.0.0/16的路由表項,若沒有就會返回如圖3所示的結(jié)果。

3、既然路由表中沒有到網(wǎng)絡(luò)172.16.0.0/16的路由,那PC1中的二層ARP表中有沒有與172.16.1.1對應(yīng)的MAC地址表項呢?因為只有IP地址和MAC地址之間進行了一一對應(yīng)的綁定,主機在封裝完三層具有源和目的IP地址的數(shù)據(jù)包后,然后在進行二層封裝數(shù)據(jù)幀時,必須找到與IP目的地址對應(yīng)的MAC地址,才能完成二層的封裝。不過如圖5所示,PC1中的ARP表中,并沒有IP地址172.16.1.1和PC2的MAC地址的對照表。

(圖5 主機PC1中的ARP表)

(圖5 主機PC1中的ARP表)

4、既然PC1的路由表中沒有到網(wǎng)絡(luò)172.16.0.0/16的路由,那就在PC1中添加一條靜態(tài)路由,如圖6所示。注意添加靜態(tài)路由的命令格式,必須和圖6所示的一致。只是在命令的***還有一個"IF"參數(shù),可以省略不寫,這并不影響命令的正確執(zhí)行。

(圖6 在主機PC1中添加靜態(tài)路由)

(圖6 在主機PC1中添加靜態(tài)路由)#p#

5、執(zhí)行完添加靜態(tài)路由的命令后,在PC1中再次執(zhí)行命令"route print"后,發(fā)現(xiàn)PC1的路由表中,已經(jīng)包含了到網(wǎng)絡(luò)172.16.0.0/16的路由,如圖7所示。

(圖7  PC1路由表中包含了到PC2網(wǎng)絡(luò)的路由)

(圖7  PC1路由表中包含了到PC2網(wǎng)絡(luò)的路由)

6、既然PC1中的路由表中已經(jīng)包括了到達網(wǎng)絡(luò)172.16.0.0/16的路由,那是不是在PC1上就能ping通172.16.1.1了?結(jié)果如圖8所示,這時PC1還是不能ping通PC2。

(圖8 在主機PC1上還是ping不通PC2)

(圖8 在主機PC1上還是ping不通PC2)

這是因為,雖然PC1路由表中包含有到PC2的路由,這樣在PC1上發(fā)送具有目的IP地址是172.16.1.1的ping包時,數(shù)據(jù)包能夠到達PC2。但是當(dāng)PC2收到ping包后,PC2依據(jù)ping的性質(zhì),還要把ping包再發(fā)送回PC1,在PC1收到PC2返回的ping包后,一個完整的ping過程才結(jié)束。

但是當(dāng)PC2發(fā)送ping包前,它在自己的路由表中要查找,有沒有到達目的網(wǎng)絡(luò)地址是10.0.0.0/8的路由,但是它沒有找到這項路由。在這種情況下PC2就自動丟棄了這個ping包,所以PC1也就收不到由PC2返回的ping包,自然也就有了圖8所示的結(jié)果。

7、不過這時在PC1上,也發(fā)生了一個明顯的變化。當(dāng)再次在命令行中執(zhí)行命令"arp -a"后,發(fā)現(xiàn)PC1的ARP表中多了一項IP地址172.16.1.1和PC2的MAC地址的綁定項,如圖9所示。

(圖9  PC1中已有了包含PC2的ARP表項)

(圖9  PC1中已有了包含PC2的ARP表項)#p#

這是因為,當(dāng)在PC1上執(zhí)行"ping 172.16.1.1"命令后,PC1首先在路由表中找到了到達網(wǎng)絡(luò)172.16.0.0/16的路由表項,然后就對數(shù)據(jù)包進行三層封裝。當(dāng)三層封裝完成后,PC1就要根據(jù)172.16.1.1對應(yīng)的MAC地址,對數(shù)據(jù)包進行二層封裝。這是因為只有把正確的MAC地址封裝進數(shù)據(jù)幀后,數(shù)據(jù)包才能在以太網(wǎng)中被正確的送達目的地,因為在以太網(wǎng)中只依據(jù)二層MAC地址,而不是三層IP地址傳輸數(shù)據(jù)。但這時當(dāng)PC1在ARP表中查找172.16.1.1的MAC地址時,它并沒有找到。

這時PC1就會發(fā)出一個廣播包,詢問誰有IP地址172.16.1.1的MAC地址,當(dāng)PC2收到這個廣播包后,發(fā)現(xiàn)172.16.1.1這個IP地址和自己的IP地址一樣,就給PC1返回一個數(shù)據(jù)包,數(shù)據(jù)包中就包括有和172.16.1.1對應(yīng)的MAC地址,當(dāng)PC1收到這個數(shù)據(jù)包后,就會在自己的ARP表中添加與IP地址172.16.1.1對應(yīng)的MAC地址表項,所以當(dāng)再次執(zhí)行"arp -a"命令后,就能看到多了這一項。

那為什么***次執(zhí)行"arp -a"命令時,PC1的ARP表中沒有與172.16.1.1對應(yīng)的MAC地址綁定呢?因為***次在PC1上執(zhí)行ping 172.16.1.1命令時,PC1在路由表中沒有找到與網(wǎng)絡(luò)172.16.0.0/16對應(yīng)的路由,這時PC1就自動放棄了封裝三層數(shù)據(jù)包的行為,既然三層數(shù)據(jù)包都沒有進行封裝,就更談不上在PC1中進行二層封裝了,所以PC1也就沒有必要知道與172.16.1.1對應(yīng)的MAC地址了,也就沒有再發(fā)送一個廣播包詢問與172.16.1.1對應(yīng)的MAC地址。所以,***次執(zhí)行"arp -a"命令時,PC1的ARP表中并沒有與172.16.1.1對應(yīng)的MAC地址表項。

8、既然現(xiàn)在知道在PC1上ping不通PC2是因為,在PC2上沒有到達網(wǎng)絡(luò)10.0.0.0/8的路由,那現(xiàn)在就在PC2上添加一條靜態(tài)路由,如圖10所示,格式和在PC1上添加到網(wǎng)絡(luò)172.16.0.0/16的路由格式是一樣的。

(圖10 在主機PC2上添加靜態(tài)路由)

(圖10 在主機PC2上添加靜態(tài)路由)

9、在PC2上添加完靜態(tài)路由后,再在PC1上執(zhí)行ping命令后,就能ping通了,如圖11所示。因為ping包到達PC2后,也能在路由表中找到去往PC1網(wǎng)絡(luò)10.0.0.0/8的路由了。

(圖11 在PC1上能夠ping通PC2)

(圖11 在PC1上能夠ping通PC2)#p#

三、總結(jié)

1、ARP(Address Resolution Protocol,地址解析協(xié)議)

(1)概念:ARP工作在數(shù)據(jù)鏈路層,它和硬件接口進行聯(lián)系,同時對上層提供服務(wù)。ARP將計算機的32位網(wǎng)絡(luò)IP地址,轉(zhuǎn)化為48位的MAC物理地址。在以太網(wǎng)中的數(shù)據(jù)幀從一個主機到達網(wǎng)內(nèi)的另一臺主機是根據(jù)48位的以太網(wǎng)地址來確定接口的,而不是根據(jù)32位的IP地址。計算機網(wǎng)卡的驅(qū)動程序,必須知道目的端的硬件MAC地址才能發(fā)送數(shù)據(jù)。因此,必須把IP目的地址轉(zhuǎn)換成以太網(wǎng)的目的地址。

在TCP/IP協(xié)議棧中,網(wǎng)絡(luò)層和傳輸層只關(guān)心目標(biāo)主機的IP地址。這就導(dǎo)致在以太網(wǎng)中使用IP協(xié)議時,數(shù)據(jù)鏈路層的以太網(wǎng)協(xié)議接到上層IP協(xié)議提供的數(shù)據(jù)中,只包含目的主機的IP地址。而地址解析(address resolution)就是主機在發(fā)送數(shù)據(jù)幀前將目標(biāo)IP地址轉(zhuǎn)換成目標(biāo)MAC地址的過程。ARP在正常情況下的通訊模式應(yīng)該是,請求→應(yīng)答→請求→應(yīng)答,也就是一問一答的規(guī)則。

(2)ARP工作原理:首先,每臺主機都會在自己的ARP緩沖區(qū)中建立一個 ARP列表,以表示IP地址和MAC地址之間的對應(yīng)關(guān)系。當(dāng)源主機需要將一個數(shù)據(jù)包要發(fā)送到目的主機時,會首先檢查自己 ARP列表中是否存在該 IP地址對應(yīng)的MAC地址,如果有﹐就直接將數(shù)據(jù)包發(fā)送到這個MAC地址。如果沒有,就向本地網(wǎng)段發(fā)起一個ARP請求的廣播包,查詢此目的主機對應(yīng)的MAC地址。此ARP請求數(shù)據(jù)包里包括源主機的IP地址、硬件地址、以及目的主機的IP地址。網(wǎng)絡(luò)中所有的主機收到這個ARP請求后,會檢查數(shù)據(jù)包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此數(shù)據(jù)包;如果相同,該主機首先將發(fā)送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已經(jīng)存在該IP的信息,則將其覆蓋,然后給源主機發(fā)送一個 ARP響應(yīng)數(shù)據(jù)包,告訴對方自己是它需要查找的MAC地址。源主機收到這個ARP響應(yīng)數(shù)據(jù)包后,將得到的目的主機的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息開始數(shù)據(jù)的傳輸。如果源主機一直沒有收到ARP響應(yīng)的數(shù)據(jù)包,就表示ARP查詢失敗。

2、理解路由的兩個關(guān)鍵知識點

(1)路由器對三層數(shù)據(jù)包的路由轉(zhuǎn)發(fā),是根據(jù)"網(wǎng)絡(luò)地址"轉(zhuǎn)發(fā)數(shù)據(jù)包的,而不是根據(jù)"IP地址"轉(zhuǎn)發(fā)的。例如,一臺路由器收到一個需要路由的數(shù)據(jù)包,數(shù)據(jù)包的目的IP地址是213.17.53.9,掩碼是255.255.255.0。然后路由器首先要做的是結(jié)合數(shù)據(jù)包的IP地址和掩碼,算出數(shù)據(jù)包要被路由的目的網(wǎng)絡(luò)地址是213.17.53.0/24,然后,路由器才會在其路由表中查找有沒有到網(wǎng)絡(luò)213.17.53.0/24的路由,而不是查找到IP地址213.17.53.9的路由,若有就依據(jù)路由表提供的信息,在相應(yīng)的接口上將數(shù)據(jù)包轉(zhuǎn)發(fā)出去。若沒有找到對應(yīng)的路由,則路由器就會自動把數(shù)據(jù)包丟棄。

(2)路由器對數(shù)據(jù)包的路由,是依據(jù)三層數(shù)據(jù)包中的"目的IP地址"進行路由轉(zhuǎn)發(fā)的,而和數(shù)據(jù)包中的"源IP地址"沒有關(guān)系。也就是路由器收到三層數(shù)據(jù)包后,只需要數(shù)據(jù)包中的目的IP地址和目的IP地址的掩碼,就可完成對數(shù)據(jù)包的路由,整個過程沒有使用到三層數(shù)據(jù)包中的源IP地址,及其掩碼。

【51CTO.com獨家特稿,非經(jīng)授權(quán)謝絕轉(zhuǎn)載!合作媒體轉(zhuǎn)載請注明原文出處及出處!】

責(zé)任編輯:佟健 來源: 51CTO.com
相關(guān)推薦

2014-06-11 13:25:14

IPARPRARP

2010-07-07 17:09:24

IP地址協(xié)議

2014-09-24 09:56:05

IP ARP RIP

2020-12-03 08:37:38

TCPIPARP協(xié)議

2010-06-17 17:53:28

2010-06-17 17:57:32

ARP協(xié)議

2023-12-17 14:43:17

2011-07-20 10:20:04

2010-06-12 18:00:16

ARP協(xié)議

2010-06-21 17:51:53

Linux Arp命令

2010-06-09 15:23:25

2010-04-06 11:23:48

2011-06-02 10:28:15

網(wǎng)絡(luò)命令Arp

2019-10-31 08:43:43

ICMPARP協(xié)議ARP欺騙

2010-06-12 17:53:14

ARP協(xié)議

2010-06-28 16:12:43

ARP協(xié)議

2010-06-13 13:55:21

ARP協(xié)議

2010-06-21 13:01:12

2010-06-12 15:54:09

TCP IP協(xié)議

2010-01-11 10:46:31

點贊
收藏

51CTO技術(shù)棧公眾號