1.移动IPv6代理发现
移动IPv6利用IPv6邻节点搜索功能中ICMPv6路由器发现机制,来完成以下主要功能:
*判定移动主机当前的位置,是位于家乡链路还是外地链路;
*判定移动主机是否存在链路切换;
*移动主机移动至外地网络时获得转交地址。
在该路由器发现机制中定义了两条报文:路由器请求和路由器广播。在路由器广播报文中包括IPv6报头、ICMPv6路由器广播(固定部分)和前缀信息可选项三大部分,从可选项的网络前缀域可以判断移动主机当前位置和进行移动检测。移动主机检查接收到的广播消息中的网络前缀,如果与移动主机家乡地址前缀相同,则移动主机连接在家乡网络,此时应通知家乡代理已返回家乡链路;如果没有一个网络前缀与移动主机的家乡网络相同,则移动主机就一定连在外地链路上,此时移动主机从最近接收的广播消息中的刚络前缀与先前收到的对比,来决定移动主机位置是否移动。
2.获得转交地址
由于移动IPv6中没有外地代理的既念,所以移动主机只能采用配置转交地址。移动主机可以通过两种方法获得转交地址:被动地址自动配置和主动地址自动配置。通过ICMPv6路由器广播报文中定义的M比特的取值来选择采用哪种方法:
*M=0时,采用被动地址自动配置,通过DHCPv6和PPP的IPv6配置协议由服务器向移动主机提供转交地址;
*M=1时,采用主动地址自动配置,从ICMPv6路由器广播报文中得到外地链路的网络前缀,再加上移动主机与外地链路的接口标记(48bit的物理地址或MAC地址)相连,形成自己的转交地址。
移动主机可以同时拥有一个或多个转交地址,但仅有一个转交地址被注册为“主转交地址”。
3.绑定管理
移动主机的家乡地址和转交地址之间的关联称作移动主机的一个绑定(Binding)。在移动IPv6绑定管理机制中定义了三种消息:“绑定更新”、“绑定认可”和“绑定请求”,都放在目的地可选报头(IPv6的一个扩展报头)中。这三种消息用于移动主机和家乡代理或通信节点之间进行通信,也能使通信节点及时了解和缓存与移动主机转交地址之间的绑定。
当一个移动主机配置了一个新的转交地址并决定要使用该地址作为它的主转交地址时,移动主机通过发送给家乡代理一个“绑定更新”消息来注册这个新的绑定。移动主机周期性地重发“绑定更新”消息,直到家乡代理发回应答消息。
通信节点可以主动发送一个“绑定请求”消息到移动主机,要求移动主机向它发送“绑定更新”消息,以得到移动主机的当前转交地址和缓存最新绑定。以后通信节点就可以利用移动主机的主转交地址直接向移动主机发送数据包,而不必经过家乡代理转发。
4.动态家乡代理地址发现
当移动主机向家乡代理注册“主转交地址”时,它可能不知道家乡链路上能够具有家乡代理功能的路由器的地址。或者当移动主机离开家乡链路之后,原来的家乡代理出现故障或路由器出现重新配置。为此,移动主机向家乡网络发送“ICMP家乡代理地址发现请求”消息,该数据包IP报头的源地址字段中使用移动主机的转交地址。在家乡链路上接收到请求消息的家乡代理将返回“家乡代理地址发现应答”消息,在消息中给出自己的IP地址,另外也给出了家乡链路上其他家乡代理IP地址的列表。
移动主机在接收到“ICMP家乡代理地址发现应答”消息之后,就向发送此消息的家乡代理源地址发送“绑定更新”以进行注册;另外,由于移动主机能够从应答消息中得到家乡链路上其他家乡代理的地址,所以移动主机将按着家乡代理的列表顺序来发送“绑定更新”消息。
如果家乡链路上的某个家乡代理上有一个合法的注册,那么移动主机在进行新的注册时,必须首先对这个家乡代理进行注册更新。如果这个注册过程失败或被拒绝,那么移动主机就要向家乡链路上其他的家乡代理进行注册。如果移动主机不知道家乡链路上其他家乡代理的地址,那么它将执行“动态家乡代理地址发现”机制。
5.数据包选路
(1)通信节点向移动主机发送数据包。当通信节点中缓存移动主机转交地址的绑定时,就可以利用IPv6选路报头中目的可选项直接将数据包发往移动主机。此时采用的是从源节点到移动主机的一条优化路径。
当通信节点不知道移动主机的转交地址时,路由数据包的方法与移动IPv4相同,即家乡代理截获数据包,然后通过隧道技术发送到移动主机。
(2)移动主机向通信节点发送数据包。所有的IPv6路由器都具有ICMPv6路由器发现功能。当移动主机位于外地链路时,可以从路由器广播消息中任选一台作为默认路由器,配置相应的路由表,所发出的数据包均通过该路由器选路。
网络中许多路由器都具有入口过滤规则的限制:不允许源地址不正确的数据包通过。当移动主机在外地发送数据包时,通常它将使用当前的转交地址作为数据包报头中的源地址,按照传统规则这些数据包将会被丢弃。而在移动IPv6定义了一个附加的IPv6目的地选项即“家乡地址”选项,使采用转交地址作为IPv6报头的源地址的数据包将正常通过。
原创文章,作者:中国IPv6网,如若转载,请注明出处:https://www.ipv6s.com/basis/mobile/20100808480.html