计算机网络(四):ICMP协议,ARP地址解析协议,NAT地址转换,TTL

文章目录

  • 一、ICMP协议概念和应用
    • 两台电脑Ping不通可能存在哪些问题
  • 二、ARP地址解析协议
  • 三、网络地址转换NAT
    • NAT实现方式
  • 四、TTL


一、ICMP协议概念和应用

ICMP是因特网控制报文协议,主要是实现IP协议中未实现的部分功能,是一种网络层协议。该协议并不传输数据,只传输控制信息来辅助网络层的通信。其主要的功能是验证网络是否畅通无阻以及辅助IP协议实现可靠传输(IP协议本身不可靠)

ICMP的应用比如:
Linux下的Ping命令和TraceRoute命令。TraceRoute主要用来跟踪一个分组从原点耗费最少TTL到达目的地的路径。

两台电脑Ping不通可能存在哪些问题

  • 首先查看网络连接是否正常,检查网卡驱动是否正确安装。
  • 局域网设置问题,检查IP地址是否设置正确。
  • 看是否会被防火墙阻拦,如果会的话要尝试关闭防火墙。
  • 看是否会被第三方软件阻截。
  • 两台设备间的网络延迟是否过大,比如路由设置不合理造成ICMP报文无法在规定的时间内收到。

二、ARP地址解析协议

ARP是地址解析协议的缩写,该协议提供根据IP地址来获取物理地址的功能,其是一个链路层协议,其在链路层中和物理层进行联系同时向上层提供服务。当通过以太网发送IP数据报时,需要先封装32位的IP地址和48位的MAC地址。

ARP协议的解析过程如下:

  1. 首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
  2. 当源主机要发送数据的时候,首先检查ARP列表中是否有IP地址对应的目的主机MAC地址,如果存在,则可以直接发送数据,否则就向同一子网内的所有主机发送ARP数据报。 该数据报包括的内容有源主机的IP地址和MAC地址,以及目的主机的IP地址。
  3. 当同一子网内的所有主机接收到了ARP数据报的时候,首先检查数据包中的 目的 主机IP 地址是否是自己的 IP 地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的 IP 和 MAC 地址写入到 ARP 列表,然后将自己的 MAC 地址写入 ARP 响应包中,告诉源主机自己是它想要找的 MAC 地址。
  4. 源主机收到 ARP 响应包后。将目的主机的 IP 和 MAC 地址写入 ARP 列表,并利用此信息发送数据。如果源主机一直没有收到 ARP 响应数据包,表示 ARP 查询失败

三、网络地址转换NAT

NAT(Network Address Translation),即网络地址转换,是一种把内部私有网络地址翻译成公有网络IP地址的协议。该技术不仅能解决 IP 地址不足的问题,而且还能隐藏和保护网络内部主机,从而避免来自外部网络的攻击。

NAT实现方式

  1. 静态转换: 内部私有IP地址和公有IP地址一一对应。
  2. 动态转换: 采用动态转换的方式,私有IP地址每次转换得到的公有IP地址不是唯一的。当私有IP地址被授权访问internet时会被随机转换成一个合法的公有IP地址。当ISP通过的合法IP地址数量略少于网络内部的计算机数量的时候,可以采用这种方式。
  3. 端口多路复用:该方式将外出数据报的源端口进行端口转换,通过端口多路复用的方式,实现内部网络所有主机共享一个合法的外部IP地址进行Internet访问,从而最大限度节约IP地址资源。

四、TTL

TTL指的是生存时间,简单来说,他表示了数据报在网络中的时间。数据报每经过一个路由器TTL减一,当TTL为0的时候则数据报被丢弃。通过设置TTL可以避免这两个路由器之间形成环导致数据报在环路上出现死循环。


你可能感兴趣的:(计算机网络,计算机网络,网络,linux)