当书本看到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的一定关系的更改。

 

不晓得对不对,如果我写的不对的话 请各位大侠指正