IPv6 - 通信

  • 简述

    在 IPv4 中,想要与网络上的另一台主机通信的主机需要通过 DHCP 或手动配置获取 IP 地址。一旦主机配备了一些有效的 IP 地址,它就可以与子网上的任何主机通话。要在第 3 层进行通信,一台主机还必须知道另一台主机的 IP 地址。链路上的通信是通过硬件嵌入的 MAC 地址建立的。为了知道 IP 地址已知的主机的 MAC 地址,主机发送 ARP 广播,作为回报,目标主机发回其 MAC 地址。
    在 IPv6 中,没有广播机制。启用 IPv6 的主机不必从 DHCP 获取 IP 地址或手动配置,但它可以自动配置自己的 IP。
    ARP 已被 ICMPv6 邻居发现协议取代。
  • 邻居发现协议

    IPv6 网络中的主机能够使用唯一的链路本地地址自动配置自己。一旦主机获得 IPv6 地址,它就会加入多个多播组。与该段相关的所有通信仅在这些多播地址上进行。主机在 IPv6 中会经历一系列状态:
    • Neighbor Solicitation: 在手动或通过 DHCP 服务器或通过自动配置配置所有 IPv6 后,主机向 FF02::1/16 多播地址发送一条邻居请求消息,以获取其所有 IPv6 地址,以便知道没有其他人占用该地址相同的地址。
    • DAD (Duplicate Address Detection):当主机不从段中侦听有关其邻居请求消息的任何内容时,它假定段上不存在重复地址。
    • Neighbor Advertisement:在为其接口分配地址并使其启动并运行后,主机再次发送邻居广告消息,告诉该网段上的所有其他主机,它已将这些 IPv6 地址分配给其接口。
    主机完成其 IPv6 地址的配置后,将执行以下操作:
    • Router Solicitation:主机在其网段上发送路由器请求组播数据包 (FF02::2/16) 以了解该网段上是否存在任何路由器。它帮助主机将路由器配置为其默认网关。如果其默认网关路由器出现故障,主机可以转移到新路由器并使其成为默认网关。
    • Router Advertisement:当路由器收到路由器请求消息时,它会响应主机,在该链路上通告其存在。
    • Redirect: 这可能是Router收到Router Solicitation请求但知道自己不是主机的最佳网关的情况。在这种情况下,路由器发回一个重定向消息,告诉主机有一个更好的“下一跳”路由器可用。下一跳是主机将其数据发送到不属于同一段的主机的地方。