一、ICMP协议概念和应用
ICMP是因特网控制报文协议,主要是实现IP协议中未实现的部分功能,是一种网络层协议。该协议并不传输数据,只传输控制信息来辅助网络层的通信。其主要的功能是验证网络是否畅通无阻以及辅助IP协议实现可靠传输(IP协议本身不可靠)
ICMP的应用比如:
Linux下的Ping命令和TraceRoute命令。TraceRoute主要用来跟踪一个分组从原点耗费最少TTL到达目的地的路径。
两台电脑Ping不通可能存在哪些问题
- 首先查看网络连接是否正常,检查网卡驱动是否正确安装。
- 局域网设置问题,检查IP地址是否设置正确。
- 看是否会被防火墙阻拦,如果会的话要尝试关闭防火墙。
- 看是否会被第三方软件阻截。
- 两台设备间的网络延迟是否过大,比如路由设置不合理造成ICMP报文无法在规定的时间内收到。
二、ARP地址解析协议
ARP是地址解析协议的缩写,该协议提供根据IP地址来获取物理地址的功能,其是一个链路层协议,其在链路层中和物理层进行联系同时向上层提供服务。当通过以太网发送IP数据报时,需要先封装32位的IP地址和48位的MAC地址。
ARP协议的解析过程如下:
- 首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
- 当源主机要发送数据的时候,首先检查ARP列表中是否有IP地址对应的目的主机MAC地址,如果存在,则可以直接发送数据,否则就向同一子网内的所有主机发送ARP数据报。 该数据报