一、移动IP简介
  • 前面讨论了IP数据报通过Internet转发的传统方式,以及使用IP的专用网络。这个模型的假设是一台主机的IP地址与附近主机和路由器共享同一前缀。如果这 样一台主机在网络中的连接点改变,但仍保留与链路层网络的连接,它的所有上层(例如TCP)连接将会失效,这是因为它的IP地址必须改变,或路由不能将分组正确交付给(移动 后的)主机
  • 针对它的研究已开展多年(实际上已有几十年),移动IP解决了这个问题(有人 已提出其他协议)。虽然有备种版本的移动IP一一针对IPv4的(称为MIPv4)和针对IPv6的,但我们更关注移动IPv6 (称为MIPv6),因为它更灵活和更容易解释
  • 另外,它似乎更容易在快速增长的智能手机上应用。注意,我们不会全面讨论移动IPv6,此处只是简单的介绍

移动IP场景

  • 移动IP基于一台主机拥有一个“家乡”网络,但可以不时地访间其他网络的想法。当 主机位于家乡内部时,普通转发基于本章讨论的算法
  • 当主机离开家乡时,它保持平时在家 乡使用的IP地址,但采用一些特殊的路由和转发手段,使主机可以在这个网络中与其他系 统通信,就好像它仍连接在自已的家乡网络中那样。该方案依赖于一种特殊类型的路由器, 它被称为“家乡代理”,用于为移动节点提供路由
  • MIPv6的复杂性主要涉及信令消息,以及如何保证它们的安全。这些消息使用各种形式的移动扩展头部(表5-5中的下一个头部字段值为135,通常直接称为移动头部),因此移动IP自身实际上是一种特殊的协议。IANA维护备种头部类型注册信息(目前17被保留),以及很多与MIPv6相关的参数[MP]。我们将关注[RFC6275]定义的基本信息。其他消息用于实现“快速切换” [RFC5568]、改变家乡代理[RFC5142]和实验目的[RFC5096]。为了理解MIPv6我们开始介绍IP移动的基本模型以及相关术语
二、基本模型:双向隧道
  • 图5-17显示了MIPv6运行中涉及的实体。大部分术语也适用于MIPv4
  • 一 台可能移动的主机称为移动节点(MN),与它通信的主机称为通信节点(CN)
  • MN被赋予 一个由家乡网络的网络前缀获得的IP地址。这个地址称为家乡地址(HoA)。当它漫游到一 个可访问的网络时,它被赋予了另一个地址,称为转交地址(CoA)
  • 在基本模型中,当一个CN与一个MN通信时,该流量需要通过MN的家乡代理(HA)来路由。HA是一种特殊类 型的路由器,它像其他重要系统(例如路由器和web服务器)一样部署在网络基础设施中
  • MN的HoA和CoA之间的关联称为MN绑定

TCP/IP卷一:29---Internet协议之(移动IP(MIPv6))_ip地址

  • 基本模型(见图5-17)工作在一个MN的CN不便用MIPv6协议的情况下。在整个网 络移动的情况下,这个模型用于支持网络移动(称为“NEMO” [RFC3963])。当MN (或 移动网络的路由器)连接到网络中的一个新位置时,它接收自已的CoA,并向自已的HA 发送一个绑定更新消息。这个HA使用一个绑定确认来响应。如果一切顺利,这个MN和 CA之间的流量通过MN的HA来路由,并使用一种双向的IPv6分组隧道,称为双向隧道。这些消息通常使用IPsec的封装安全有效负栽(ESP)来保护。这 样做可确保一个HA不会在接收到一个伪造的MN绑定更新时被欺骗
三、路由优化
  • 双向隧道使MIPv6工作在一种相对简单的方式下,并使用那些不被移动IP所感知的 CN,但是路由效率可能非常差,特别是在MN与CN之间距离近,但与HA之间距离较远 的情况下。为了改善MIPv6中可能出现的低效路由,可使用一种称为路由优化(RO)的方 法,只要它被涉及的备个节点支持。正如我们所见,确保RO安全和可用的方法相当复杂。 我们将描述它的基本操作。更详细的内容见[RFC6275]和[RFC4866]。RO安全相关的设计原理见[RFC4225]
  • 在使用RO时涉及一个通信注册过程,一个MN将当前CoA通知相应CN,允许它们 执行无须HA协助的路由o RO操作分为两部分‥ 一部分涉及注册绑定的建立和维护;另一 部分涉及所有绑定建立后的数据报交换方法。为了与自已的CN建立一个绑定, MN必须向 每个CN证明自已的真实身份。这通过一个返回路由程序(RRP)来完成。支持RRP的消息 在MN和HA之间不使用IPseco在MN和CN之间工作的IPsec被认为并不可靠(IPv6需要 IPsec支持,但不要求必须使用它)。虽然RRP不像IPsec那样强大,但是它更简单,并涵盖移动IP设计者关注的大多数安全威胁
  • RRP使用以下这些移动消息,它们是IPv6移动扩展头部的子类型‥ 家乡测试初始化 (HoTI)、家乡测试(HoT)、转交测试初始化(CoTI)和转交测试(CoT)。这些消息向CN验 证一个特定MN的家乡地址(HoTI和HoT消息)和转交地址(CoTI和CoT消息)可到达。 这个协议如图5-18所示

TCP/IP卷一:29---Internet协议之(移动IP(MIPv6))_其他_02

  • 为了理解RRP,我们来看一个简单例子:只有一个MN及其HA,以及一个CN,如 图5-18所示o MN开始向CN发送HoTI和CoTI消息o HoTI消息在到达CN途中通过HA 转发o cN以某种顺序接收到这两种消息,并分别以HoT和CoT消息响应。HoT消息经由 HA发送到MNo这些消息中包含称为令牌的随机字符串, MN使用它形成一个加密密钥。随后,这个密钥被用于生成发送给CN的经过 认证的绑定更新。如果成功的话,路由可优化,数据可以在MN与CN之间直接传输,如 图5-19所示

TCP/IP卷一:29---Internet协议之(移动IP(MIPv6))_其他_03

  • 当一个绑定成功建立后,数据可直接在MN和CN之间流动,而无须使用效率低的双向隧道。对于从MN到CN的流量,可使用IPv6家乡地址目的地选项;对于相反方向的流量, 可使用类型2的路由头部(RH2),详见图5-19。从MN到CN的分组中包括MN的CoA的 源IP地址字段,从而避免人口过滤问题[RFC2827],它可能导致包含MN的HoA的源IP地 址字段的分组被丢弃。由于包含在家乡地址选项中的MN的HoA不会被路由器处理,因此 它可不经修改通过路由器到达CNo在返回的路径上,分组被发送到MN的CoA。在成功接 收返回的分组后, MN处理扩展头部并用包含在RH2中的HoA替换目的IP地址。这个分组 被交付给MN协议栈其余部分,因此应用程序“相信”自已正在使用的是MN的HoA,而不是用于建立连接和其他操作的CoA