在IPv4中,主机的希望与网络上的其他主机进行通信时,需要先有一个IP地址或者通过DHCP或通过手动配置获取。只要一台主机配备了一些有效的IP地址,它现在能说对子网的任何主机。在3层通信,主机还必须知道对方主机的IP地址。在链路通信,是由嵌入式硬件的MAC地址方式设立。要知道主机的MAC地址的IP地址是已知的,一台主机发送ARP广播和撤销的目的主机发送回其MAC地址。
在IPv6中,没有广播机制。它不是一个必须为使用IPv6的主机从DHCP获得IP地址或手工配置的,但它可以自动配置自己的IP。那么,如何与其他启用IPv6网络中的主机进行通信?
ARP已取代的ICMPv6邻居发现协议。
邻居发现协议
在IPv6网络中的主机能够与一个唯一的链接本地地址的自动配置本身。只要它配备了一个IPv6地址,它加入了一些组播组。与该段所有的通信发生在只有多播地址。主机经过一系列状态IPv6:
-
相邻节点请求: 手动配置所有IPv6,或通过DHCP服务器或自动配置之后,主机发送邻居请求消息出来为FF02::1/16的多播地址的所有的,以IPv6地址要知道,没有人占据相同的地址。
-
DAD(重复地址检测): 当主机没有从该段就其相邻节点请求消息听什么,它假设没有重复的地址存在于该段。
-
邻居通告: 分配地址的接口,使它们运行起来后,主机再次发出了一个邻居通告消息,告诉所有其他主机上段,它已分配的IPv6地址,其接口。
一旦主机与IPv6地址的配置完成后,它下面的事情:
-
路由器请求: 主机发送一个路由器请求多播包(FF02::2/16)列在自己的网段要知道任何一台路由器在这部分的存在。这有助于配置路由器作为其默认网关的主机。如果它的默认网关路由器出现故障时,主机可以转移到一个新的路由器,使得它的默认网关。
-
路由器通告: 当路由器收到一个路由请求消息时,它响应返回给主机宣传其在该链路存在。
-
重定向: 这可能是其中一个路由器接收到一个路由请求请求,但它知道它是不是主机的最佳网关的情况。在这种情况下,路由器发送回一个重定向消息,通知主机,有一个更好的“下一跳”的路由器使用。下一站是哪里,主机就会发送它的数据注定不属于同一网段的主机。