计算机之间如何通讯的
链接
从一张图看网络参数,我们经常使用网络的人都会见过下面这张图,不过一般情况下大家都不会手动去配置,而是选择自动获取。那么有的时候当我们网络出现故障了,无法自动获取了,可能就需要去手动设置ip,所以还是需要对下面这些参数进行一定的了解的。
相同网段的通信
小明和小美之间通信,其实就相当于小明主机ping10.1.1.3。下面我们来分析一下ping的这个流程。
1)小明利用自身的子网掩码和小美的ip地址进行&运算,得到小美的网段号。然后小明发现自己和小美处在同一个网络中。
2)检查自身的arp缓存
当IP层的ARP高速缓存表中存在目的IP对应的MAC地址时:
直接封装这个ping包并发送给小美当IP层的ARP高速缓存表中不存在目的IP对应的MAC地址时:
小明按照路由表中的默认接口ETH0发送广播给整个局域网,局域网内的每台主机都收到了这个信息,其他主机都无反应,但是小美这台主机10.1.1.3意识到这是在叫自己。然后采取点对点单播回复小明:我在这里,我的mac地址是xxxx.以后你可以用这个联系方式联系我。小明收到此回复后,保存到自己的通讯录中(arp缓存中),方便下次联系。然后通过刚才记录的小红的mac地址发送ping包,依照类似的步骤,很快小红发出了回信。小明主机收到ping包的返回内容。
不同网段的通信
也就是上图中小明和小丽的通信:
小明ip:10.1.1.2/24
小丽ip:10.1.2.2/24第一步:判断是否在同一个网段
小明将自己的子网掩码和小丽的ip进行&运算,发现二人不在同一个网络内。小明无法利用上文中的通信手段和小丽进行通信第二步:查找路由表
既然无法直接通信,小明就想有没有别的道路能够到达小丽。于是他查看了自己的路由表,信息如下: