本节书摘来自异步社区《深入解析IPv6(第3版)》一书中的第10章,第10.2节,作者: 【美】Joseph Davies 更多章节内容可以访问云栖社区“异步社区”公众号查看。
10.2 IPv6端到端的传输过程
在下面这一节中,我们将描述发送主机发出IPv6包,经过一个或多个IPv6路由器,并由最终目的接收的过程。在这个示例中,我们假设数据没有出现“逐跳可选项”、“目的可选项”和“路由”扩展头部。
10.2.1 发送方主机的IPv6
当IPv6主机向任意单播目的地址发送数据包时,会使用如下算法。
1.将跳数限制字段值设置为默认值或应用指定值。
2.在目的缓存中查找匹配目的地址的条目。对运行Windows Server 2012、Windows Server 2008 R2、Windows Server 2008、Windows 8、Windows 7和Windows Vista的计算机,可以使用命令netsh interface ipv6 show destinationcache来查看目的缓存。
3.如果在目的缓存中找到了匹配目的地址的一个条目,则在目的缓存中获取下一跳地址和接口。跳到第9步。
4.如果没有数据包的源地址,则执行非约束路由查找。
5.如果有数据包的源地址,且源接口启用了强主机发送行为,则执行约束路由查找。
6.如果有数据包的源地址,且源接口禁用了强主机发送行为,则执行非约束路由查找。
7.如果有最长匹配的可用路由,则通