一 同一子网中计算机建立连接
若是计算机将通过子网掩码查看对方计算机与己方ip是否同属于一个子网。如
192.168.0.2与192.168.0.6在同一子网。
若属于同一个子网则计算机将通过ARP(address resolution protocol)广播寻找对方ip对应的mac地址,一旦计算机获得了mac地址则将该信息存入arp缓存中。(arp缓存可以降低arp广播的流量)
(截图来源于ARP Explained - Address Resolution Protocol - YouTube)
此处dynamic表示该缓存为动态的,也就是说其在广播时会自动生成但不会永久占用而是会定期刷新。(若想进一步减少arp广播的流量设置静态的arp缓存)
(截图来源于ARP Explained - Address Resolution Protocol - YouTube)
二 不同子网中计算机建立连接
如两台电脑的ip分别为192.168.0.2与192.168.2.6,通过子网掩码的与运算容易发现两台电脑的ip不在同一子网。
此处需要默认网关(default gateway)的帮忙,当电脑进行arp广播后寻找到默认网关的mac地址后与默认网关建立连接(arp广播的范围局限在一个子网中,arp广播不会经过路由器传播出去),默认网关通过nat转源信息为全局ip,再通过路由转到另一子网的默认网关,后通过默认网关的NAT从而与对方计算机建立连接。