移动IP的原理

目的

使得移动主机在各网络之间漫游时,仍然能保持其原来的IP地址不变

工作步骤

  1. 代理发现与注册
    • 主机A:主机A移动到外地网络后,通过"代理发现协议",与外地代理建立联系,并从外地代理获得一个转交地址,同时向外地代理注册自己的永久地址和归属代理地址。
    • 外地代理:外地代理将移动主机A的永久地址记录在自己的注册表中,并向移动主机的归属代理注册该移动主机的转交地址。
      • 转交地址:当外地代理和移动主机不是一台设备时,就是外地代理的IP地址;是一台设备时,就是移动主机在外地网络的IP地址。转交地址只会作为从归属代理到外地代理的IP隧道的出口地址而存在,而既不会作为移动主机发送IP数据报的源地址,也不会作为移动主机所接收IP数据报的目的地址
      • 移动主机发送时:移动主机接收数据报时,需要下面的归属代理作为中间人发给外地代理再给自己,但移动主机作为发送方时,由于IP路由器不关心源地址,因此可以把外地代理作为默认路由器或从外地代理获取其他路由器,然后通过外部代理发送给目的主机,而不需要归属代理作为中间人了。
    • 归属代理:随后归属代理会将A的转交地址记录下来,此后归属代理会替代移动主机接受所有发送给该主机的IP数据报,并用IP隧道技术将这些数据报转交给外地网络中的移动主机
      • 归属代理是怎么冒充移动主机的:移动主机不在归属网络时,归属代理会以自己的MAC地址应答所有对该移动主机的ARP请求,即"归属代理采用ARP代理技术"。为了使归属网络中其他各主机和路由器能尽快更新各自的ARP高速缓存,归属代理还会主动发送ARP广播,并声称自己是该移动主机。这样所有发送给该移动主机的IP数据报都会发送给归属代理
      • IP隧道技术:将原IP数据报(源地址是B的IP地址,目的地址是A在归属网络中的永久地址)作为数据载荷,添加新的首部(目的地址是外地代理的地址),由归属代理发送给外地代理。当外地代理从IP隧道中收到并解封出原IP数据报时,会在自己的代理注册表中查找移动主机的永久地址所对应的MAC地址,然后将数据报封装到目的地址为该MAC地址的帧中发送给移动主机。
  2. 三角形路由问题
    • 问题描述:即使在固定主机与移动主机之间存在一条更有效的路径,发往移动主机的IP数据报也要先发送给归属代理,造成转发低效
    • 解决方法:给固定主机配置一个通信代理,固定主机发送给移动主机的IP数据报,都要通过该通信代理转发。
      • 步骤:通信代理先从归属代理获取移动主机的转交地址,之后所有发送给移动主机的IP数据报,都利用转交地址直接通过IP隧道发送给移动主机的外地代理,而无须再通过移动主机的归属代理进行转发。
      • 评价:这种方法以增加复杂性为代价,并要求固定主机也要配置通信代理,也就是对固定主机不再透明
相关推荐
米羊1214 小时前
fastjson (3修复)
网络·网络协议·安全
人工智能训练6 小时前
OpenEnler等Linux系统中安装git工具的方法
linux·运维·服务器·git·vscode·python·ubuntu
郭涤生7 小时前
第十章_信号_《UNIX环境高级编程(第三版)》_笔记
服务器·笔记·unix
QT 小鲜肉7 小时前
【Linux命令大全】001.文件管理之which命令(实操篇)
linux·运维·服务器·前端·chrome·笔记
额呃呃7 小时前
select详细分析
服务器
网创联盟,知识导航7 小时前
沐雨云香港大宽带云服务器 · 配置全览
服务器·阿里云·腾讯云
oMcLin7 小时前
Ubuntu 22.04 无法连接外部网络的故障排查与解决(解决 DNS 配置问题)
linux·网络·ubuntu
fantasy5_58 小时前
Linux 动态进度条实战:从零掌握开发工具与核心原理
linux·运维·服务器
不瘦80斤不改名8 小时前
Python 日志(logging)全解析
服务器·python·php
莫逸风8 小时前
【局域网服务方案】:无需找运营商,低成本拥有高性能服务器
运维·服务器