输入 ping IP 后敲回车,发包前会发生什么?
参考答案
首先根据目的IP和路由表决定走哪个网卡,再根据网卡的子网掩码地址判断目的IP是否在子网内。
如果在相同网段直接先查询arp缓存,如果找到目标ip的mac地址,直接发送出去。 如果缓存中查不到,则从相同网段的网卡发arp问目标ip的mac地址,拿到mac地址后发送出去。
如果不在主机的网段里,会查询默认网关ip,接着查询arp缓存,是否有网关的mac地址记录,如果有,填充该mac地址,发送出去, 如果没有,发arp问网关的mac地址,得到结果,发送出去。