當書本看到IP原理的時候,這個時候我就有點懵了,無法從統一的高度去看待這個問題了。所以抓狂了幾天,後來靜下心來想了想,又重新看了看書。發現這個問題我已經想明白了。
以最簡單的拓撲圖來看
PC A----Router 1--------Router 2---------PC B
PC A和PC B通信,此時跨網段了,需要用到IP協議,經過了兩個路由轉發。
規則1:OSI參考模型每一層都會加一個頭。
解釋:那麼,當使用TCP/IP通信的時候,PC A發出包頭就是這樣的,網絡層打上帶有PC B 的IP地址的頭(叫目的IP地址,當然這個IP頭裏還會有源IP地址),交給下一層,下一層的數據鏈路層(或者叫網絡接口層)再在前面打上MAC的頭,(既有源MAC地址又有目的MAC地址,目的MAC地址爲Router1的MAC),交給Router 1。
規則2:路由主要是運行在網絡層的設備
解釋:Router 1 拿到這個包之後解開到網絡層發現這個IP不是自己的,然後查詢到,將這個包扔到Router 2上能離PC B越來越近,那麼Router 1對這個包目的IP地址不做更改,而在交到下面的數據鏈路層的時候對目的MAC地址更改了,更改爲Router 2的MAC地址,然後將這個包扔到了Router 2上。
Router2拿到包之後發現目的IP是PC2,並且在自己的一個口上,那麼它改變目的MAC,不改變目的IP,封裝完成後把包扔到PC2 的口上去了。PC2再一層一層解開數據。
注意:此處不涉及NAT(網絡地址轉換)技術,如果涉及NAT的話,那麼進出路由器都會引起源IP和目的IP的一定關係的更改。
不曉得對不對,如果我寫的不對的話 請各位大俠指正