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 多播地址发送 Neighbor Solicitation 消息,用于其所有 IPv6 地址 为了知道没有其他人占用相同的地址。

  • DAD(重复地址检测):当主机没有从该网段中侦听任何有关其邻居请求消息的信息时,它假定该网段上不存在重复地址。

  • Neighbor Advertisement:在将地址分配给其接口并使它们启动并运行后,主机再次发送 Neighbor Advertisement 消息,告诉网段上的所有其他主机,它已将这些 IPv6 地址分配给 它的接口。

主机完成其 IPv6 地址的配置后,它会执行以下操作:

  • 路由器请求:主机在其网段上发送路由器请求多播数据包 (FF02::2/16),以了解该网段上是否存在任何路由器。 它帮助主机将路由器配置为默认网关。 如果其默认网关路由器出现故障,主机可以转移到新路由器并使其成为默认网关。

  • 路由器通告:当路由器收到路由器请求消息时,它会响应主机,在该链路上通告它的存在。

  • 重定向:这可能是路由器收到路由器请求但它知道它不是主机的最佳网关的情况。 在这种情况下,路由器会发回一条重定向消息,告诉主机有更好的"下一跳"路由器可用。 下一跳是主机将其数据发送到不属于同一网段的主机的位置。