你的理解確實(shí)有點(diǎn)問題吧,一個(gè)可行的改法是把PCA的掩碼改為 255.255.0.0,就沒問題了。原理解釋如下: (根據(jù)你的描述,我暫且理解為你的網(wǎng)絡(luò)環(huán)境中只有一臺(tái)直連交換機(jī),不存在路由器或其他的網(wǎng)絡(luò)設(shè)備) 《一點(diǎn)該說的基礎(chǔ)知識(shí)》 首先,對(duì)于一個(gè)使用標(biāo)準(zhǔn)的ABCDE分類編址方案的IP地址,其實(shí)可以看成: IP地址 = 網(wǎng)絡(luò)號(hào) + 主機(jī)號(hào)。其中網(wǎng)絡(luò)號(hào)由本機(jī)IP地址與本機(jī)網(wǎng)絡(luò)掩碼做與運(yùn)算獲得,主機(jī)號(hào)由本機(jī)IP地址與本機(jī)網(wǎng)絡(luò)掩碼的反碼做與運(yùn)算獲得。比如說你舉的例子中,對(duì)于PCA,網(wǎng)絡(luò)號(hào)為 Net_IdA=192.168.0.0,主機(jī)號(hào)為 Host_IdA=0.0.0.6;對(duì)于PCB,網(wǎng)絡(luò)號(hào)為 Net_IdB=192.168.0.0,主機(jī)號(hào)為 Host_IdB=0.0.1.3。看到這,你肯定要大呼,這倆丫的網(wǎng)絡(luò)號(hào)不是一樣的么,那就是在同一個(gè)子網(wǎng)啊,為什么不通呢?別急著下結(jié)論,請(qǐng)耐心往下看~ 其次,ping操作的實(shí)際內(nèi)涵是什么?看下面的步驟: (1)由本機(jī)構(gòu)造一個(gè)ICMP請(qǐng)求包,發(fā)送給目的主機(jī); (2)目的主機(jī)處理后構(gòu)造一個(gè)ICMP響應(yīng)包,返回給本機(jī); (3)本機(jī)根據(jù)是否收到響應(yīng)包,以及響應(yīng)包的內(nèi)容得到本次ping的結(jié)果,并交由顯示器呈現(xiàn)給用戶。 也就是說,一次成功的ping操作其實(shí)是一次完整的雙向通信過程,并非只要本機(jī)能將請(qǐng)求發(fā)送出去就算好了的。數(shù)據(jù)包要能出得去,更要回得來。 最后還要說明的是一臺(tái)主機(jī)要給另一臺(tái)主機(jī)發(fā)送數(shù)據(jù)時(shí)的工作流程,以A向B發(fā)送數(shù)據(jù)為例,如下圖: ![]() 《下面我們?cè)賮矸治瞿愕膶?shí)驗(yàn)過程》 PCA ping PCB 當(dāng)PCA構(gòu)造好ICMP請(qǐng)求包打算發(fā)送給PCB時(shí),參照上面的流程圖,其處理過程應(yīng)當(dāng)如下: (1)PCA首先將PCB的IP地址192.168.1.3與自己的掩碼255.255.255.0做與運(yùn)算,得到它所認(rèn)為的PCB的網(wǎng)絡(luò)號(hào):Net_IdB'=192.168.1.0【注意到Net_IdB'與Net_IdB并不一致】; (2)然后用這個(gè) Net_IdB' 與自己的網(wǎng)絡(luò)號(hào) Net_IdA=192.168.0.0 作比較,發(fā)現(xiàn)不一樣; (3)PCA把構(gòu)造好的ICMP請(qǐng)求包交付給網(wǎng)關(guān),但網(wǎng)關(guān)不存在,于是請(qǐng)求發(fā)送失敗。 呈現(xiàn)給你的直觀現(xiàn)象就是 PCA ping PCB 不通【我猜系統(tǒng)給出的響應(yīng)應(yīng)該是:目標(biāo)主機(jī)不可達(dá)(中文系統(tǒng))/Destination Host Unreachable(英文系統(tǒng))】,原因在于數(shù)據(jù)包出不去。 PCB ping PCA 當(dāng)PCB構(gòu)造好ICMP請(qǐng)求包打算發(fā)送給PCB時(shí),參照上面的流程圖,其處理過程應(yīng)當(dāng)如下: (1)PCB首先將PCA的IP地址192.168.0.6與自己的掩碼255.255.0.0做與運(yùn)算,得到它所認(rèn)為的PCA的網(wǎng)絡(luò)號(hào):Net_IdA'=192.168.0.0【注意到Net_IdA'與Net_IdA是一致的】; (2)然后用這個(gè) Net_IdA' 與自己的網(wǎng)絡(luò)號(hào) Net_IdB=192.168.0.0 作比較,發(fā)現(xiàn)一樣; (3)PCB把構(gòu)造好的ICMP請(qǐng)求包直接交付給PCA 。 PCA處理后構(gòu)造完成ICMP響應(yīng)包,打算回給PCB,其處理過程和前文PCA向PCB發(fā)送請(qǐng)求包一致,結(jié)果是PCA發(fā)送響應(yīng)包失敗。 呈現(xiàn)給你的直觀現(xiàn)象就是 PCB ping PCA 不通【我猜系統(tǒng)給出的響應(yīng)應(yīng)該是:請(qǐng)求超時(shí)(中文系統(tǒng))/Request timed out(英文系統(tǒng))】,原因在于數(shù)據(jù)包回不來。 《配置的時(shí)候應(yīng)該注意什么》 如果你不是有什么特殊需求的話,那么你應(yīng)該為你同一子網(wǎng)內(nèi)的所有主機(jī)配置相同的掩碼。 |
|