为了更好的理解网关这个概念 ,昨天和小伙伴做了一个实验,梳理了网关相关知识,现在记录如下:
一 实现器材:两台PC机,分别叫PCA ,PCB和 一根网线。
二 实现操作及现象:
1 设定PCA的IP为192.168.2.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,都没有设定各自的网关。这种实验条件下,两边都能ping通。
2 设定PCA的IP为192.168.3.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,都没有设定各自的网关。这种实验条件下,两边都不能ping通。
3
设定PCA的IP为192.168.3.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,设定PCA的网关为192.168.2.10,没有设定PCB的网关,
这种实
验条件下,两边都不能ping通。
4
设定PCA的IP为192.168.3.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,设定PCB的网关为192.168.3.15,没有设定PCA的网关,
这种实
验条件下,两边都不能ping通。
5
设定PCA的IP为192.168.3.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,设定PCA的网关为192.168.2.10,设定PCB的网关为
192.168.3.15,
这种实 验条件下,两边都能ping通。
6
设定PCA的IP为192.168.3.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,设定PCA的网关为192.168.2.10,设定PCB的网关为192.168.2.10,
这种实 验条件下,两边都能ping通。
6
设定PCA的IP为192.168.3.15 ,设定PCB的IP地址为192.168.2.10 。两台主机直接相连,设定PCA的网关为192.168.3.15,设定PCB的网关为192.168.3.15,
这种实 验条件下,两边都能ping通。
三 实验现象解释:
情况1 :这时两个PC机都使用是C类地址,都在同一个网段,也即是他们的网络地址相同,根据TCP/IP协议的规范,在同一网络中的PC机可以直接通信,故可以
相互ping通。
情况2 :这时两个PC机都使用是C类地址,不在同一个网段,也即是他们的网络地址不同,根据TCP/IP协议的规范,不在同一网络中的PC机不可以直接通信,必须
借助网关 ,但此时都没有设定自己的网关,数据包不知道往哪儿发送,就丢弃了,故不能ping通。
情况3 :这时两个PC机都使用是C类地址,不在同一个网段,也即是他们的网络地址不同。设定的PCA的网关为PCB的IP地址,当PCA想要跟PCB通信时,发现PCB
跟自己不再同一个网段,然后只能把数据发给自己的网关了(192.168.2.10),当PCA的网关收到数据后,按常理应该把数据发给网关的下一个跳
或则发给其他以PCA的 网关为网关的主机,但是这时只有PCA的以这个IP地址为网关,所以此时网关就不知道把数据发给谁了,就只好丢弃了。故两边就不能ping通。
情况4 :与情况3类似。
情况5 :这时两个PC机都使用是C类地址,不在同一个网段,也即是他们的网络地址不同。设定的PCA的网关为PCB的IP地址,PCB的网关为PCA的IP地址,
当PCA想要
跟PCB通信时,发现PCB跟自己不再同一个网段,然后只能把数据发给自己的网关了(192.168.2.10),当PCA的网关收到数据后,就把数据发给PCB的网关,PCB的网
关再把数据发给PCB,这样就实现通信了。
情况6 :这时两个PC机都使用是C类地址,不在同一个网段,也即是他们的网络地址不同。设定的PCA的网关为PCB的IP地址,PCB的网关为PCB的IP地址,他们使用同一个网关,当PCA想要跟PCB通信时,发现PCB跟自己不再同一个网段,然后只能把数据发给自己的网关了(192.168.2.10),当PCA的网关收到数据后,
就把数据发给PCB的网关,由于这两个网关是同一个网关,故此时就把数据直接发送给PCB了,即实现了通信。
情况7:与情况6类似。
四 总结:
通过上述的实验,感性上就明白了网关的作用,但具体网关之间怎么通信,这就关系到网络层上的一系列协议和这种工作原理,再次就不在讨论了,太复杂,太多,一两句话说不清,可以研究路由器协议,PC机上网关的实现实际上是由PC机内核中的路由协议实现的,而以太网中网关一般指路由器。上述实验也验证了局域网中的两个网关可以不在同一网段,即是网关的IP地址的网络号可以不同。
本文原创 转载请注明源处。
http://blog.csdn.net/pengqian652/article/details/17316913
欢迎留言讨论。