这节课我们来学习一下移动IP。

那移动IP呢要跟动态IP区分开。动态IP是指,通过使用DHCP协议,在一个局域网内部的一台主机,就可以动态地获得一个IP地址。那这里面的移动IP是什么意思呢?

我们来举一个例子。假如说你现在有一台笔记本电脑,你已经工作了,你在北京某公司的总部工作。

但是有一天呢老板让你去出差,

你就来到了上海了,分公司。那你来到上海分公司之后,还想要使用本公司也就是你在北京总部的时候使用的一些权限,查看一下数据库啊,或者修改一些表项啊,以及使用一些其他功能等等。那你现在可以实现吗?当然是可以的。你只需要连入这个上海分公司的网络,

接下来呢你就可以使用跟在总部一样的权限了。那其实这一个过程呢就是移动IP的一个应用。那在这种情况下呢,我们的IP地址是不变的。啊只有我们这个IP地址保持不变,我们才能够登录上海分公司的网络,然后呢来使用在总部可以享受到的一些权限。

那这节课我们要学习的内容呢其实很简单,只有两部分。一个是移动IP的相关术语,以及移动IP的通信过程。当然这个通信过程是最重要的一个环节。

那接下来我们就来看一下移动IP的一些相关术语。在讲相关术语之前呢我们先来看一个小的例子。假如说现在有两个人,小红和小黑,他们俩个呢是非常好的朋友。但是大学毕业之后呢他们就天各一方,都有了自己的工作。可是这个小黑呢,他不知道小红现在工作在哪儿呢,但是他只记得他家的地址。那他如果要写信的时候应该怎么办呢?当然他只能邮到他家的地址,然后呢啊虽然这个小红他到了公司,啊那他妈妈,这个小红的妈妈还是可以收到信之后再把这个信件转给小红。啊因为,因为小红的妈妈是知道小红在哪个公司。所以,我们可以看到这个就类似于移动IP的一个通信过程。当这样一个移动结点,也就是这样一个设备,它移动了一个位置之后,嗯我们还是可以通过它以前的位置来把数据发送给它。

那我们接下来看一下移动IP的相关术语。移动IP技术呢是移动结点比如说计算机、服务器等以固定的网络IP地址,实现跨域不同网段的漫游功能,并且保证了基于网络IP的网络权限在漫游过程当中不发生任何改变。核心呢其实就是,即使这个物理位置发生变化了,但是网络IP地址仍然是固定不变的。那这样呢就可以实现跨越很多网段的一个漫游功能。

那首先我们来看一下什么叫移动结点呢。啊很简单,上面说过了,就是计算机、服务器等,具有永久IP地址的一个移动设备。那这个永久IP地址呢,其实就是一个固定的网络IP地址。

接下来我们再来看这个归属代理。归属代理呢也可以叫做本地代理。一个移动结点拥有的“居所”就称为归属网络。在归属网络当中代表移动结点执行移动管理功能的实体,叫做归属代理。那可以看到这个归属代理呢和刚才例子当中这个家长的角色是非常类似的。

再来看下一个概念,外部代理,也叫做外地代理。在外部网络当中帮助移动结点完成移动管理功能的实体,就叫做外部代理。那这个是在移动结点,移动到一个新的网络,也就是非归属网络的一个外部网络的时候,啊所要帮它完成移动管理功能的实体。那具体呢我们一会儿结合一个图再来理解一下。

接下来就是永久地址,也可以称为归属地址和主地址。那可以看到归属地址应该和归属代理有关,指的就是移动站点在归属网络当中的原始地址,其实也就是我们所说的这个固定的网络IP地址了。

那相对的就是一个叫转交地址,也就叫做辅地址。啊它指的是移动站点在外部网络当中所使用的一个临时的地址。那比如说我在这个网络当中,是一个A地址。那我移动到下一个网络,可能用的是B地址。那这个A地址和B地址呢,都是它临时起作用的一个地址。

那下面呢我们就结合这样一个实际的例子来理解一下刚才的概念。这是一台主机A,它的主地址呢也叫做永久地址,是这个131.8.6.7。因此它所属的网络,用前缀这种表示方法,用现在这种前缀表示法,就是131.8.0.0。那这个路由器呢,其实就作为它所在的这个归属网络的本地代理了。那这个本地代理,其实可以是路由器也可以是主机,啊这个大家要注意。那接下来呢通过广域网,这边又连着一个网络,那这个网络呢是A主机也就是A这个移动结点,现在移动到的新网络。那这个网络呢,也叫做外部网络或者是被访网络。它的网络号是15.0.0.0/8。那这个路由器呢就是作为A结点它所在的这个外部网络当中的外部代理。那我们现在来看一下这个过程。

首先呢就是A,要从它自己的这个地方,也就是它这个原来的地理位置,移动到一个新的地理位置。

移动到这个外部网络当中。那首先第一步呢就是要在外部代理这边登记一下并且获得一个转交地址,也就是获得一个临时地址。那这个临时地址什么时候会没掉呢?只要A不在这个网络里,它就没掉了,离开时就会被注销掉。那因此,它现在获得的转交地址呢就是15.5.6.7/8。这个转交地址呢和网络,也就是这个外部网络,它们的网络号一定要是一样的。第二步呢就是这个外部代理或者是外地代理,向本地代理登记转交地址。也就是说A主机它现在到了一个新的地方,申请了一个转交地址,然后呢外部代理就会把这个转交地址发给它原来的、啊原来的家长也就是发给原来的这个本地代理。那现在本地代理呢就知道了这样一个转交地址了。因此它就清楚,啊我如果收到一个要发给A的数据报,我应该往哪儿转发,就要往这个转交地址来转发,就好像我们刚才这个小红、小黑例子当中,妈妈她知道这个小红的公司在哪儿,那这个公司呢其实就类比我们这里面的转交地址。

那接下来我们再看,现在如果有一台主机B,B呢要给A发送数据报,那它应该怎么做呢?首先第一步,本地代理它会截获数据报。什么时候本地代理才可以截获呢?如果这个A主机在这个网络,在归属网络当中,那现在B发送一个数据报,A直接接收就可以了。本地代理是不做处理的。但是如果现在A主机不在了,不在这个网络了,那这个本地代理呢就要担任起一个转交的功能。所以呢,它就会把啊发往A的数据报截获,啊拿下来。拿下来之后干嘛呢?过年吗?当然不是。拿下来之后啊它要把这个数据报进行一个封装啊再封装这个数据报,然后形成一个新的数据报。那这个数据报和原来的差别就是在于,这个新数据报的目的地址是转交地址了。而原来B所发的这个数据报的目的地址,是A的这个主地址。啊可以看到目的地址从主地址变成了辅地址也就是转交地址,然后呢这个数据报封装之后就可以通过广域网发往这个外部代理。因为这个外部代理它是可以接收啊转交地址,是这样的一个数据报的。那这里面我们说它是隧道,其实就是我们之前讲过的一个隧道技术。啊隧道技术呢其实就是一个封装的过程,把原来一个不知道怎么发的数据报,封装之后就变成了一个知道往哪里发的数据报了。啊也就是说原来这个数据报的目的地址,是这个主地址。但是呢由于这个设备已经移动了,所以呢啊继续发往这个主地址也没有用了。所以它只能再封装成一个目的地址是转交地址的数据报,然后才能发往外部网络。

接下来第三步呢就是外部代理会拆封这个数据报,并且发给A。也就是把新的数据报拆成原始的这个旧的数据报,那因此这个时候啊这个数据报它的目的地址呢自然显示的就应该是主地址了,然后就发送给A。那这个路由器是怎么实现把数据报给A的呢?那在一个局域网内呢进行通信的时候,用的都是MAC地址,也就是物理地址。啊通过这个MAC地址呢,发送给A了。那有的人可能会问,外部代理什么时候知道这个A的MAC地址呢?当这个移动结点也就是这个A,它首次和外部代理通信的时候,这个外部代理就会记录下这个MAC地址了。所以这个大家不需要担心,是已经记录好的。

那接下来我们再看一种情况,现在如果A要给B通信,应该怎么办呢?这个过程其实就简单的多了。A只需要用自己的主地址作为源地址,然后呢再用B的地址作为目的地址,直接发送、经过这个外部代理发送出去就可以了。而不需要经过这个本地代理。

那接下来我们再稍微拓展一点,如果这个A呢,移动到了下一个的网络,啊,也就是离开了这个外部网络会发生什么呢?首先第一步就是,我们刚才讲过,这个外部代理就应该把这个转交地址注销掉,然后把这个转交地址呢交给别人用。啊如果再有一个新的移动过来的设备,交给它用就可以了。

那接下来第二步就是要在新的外部代理下面,登记注册一个转交地址,这个也是之前讲过的内容了。

那第二步呢就是新的这个外部代理呢会给本地代理发送一个新的转交地址,其实这个过程和刚才是非常类似的。只要到一个新的网络,就要先跟外部代理申请一个转交地址。然后外部代理紧接着把转交地址发送给本地代理。那现在只不过是又到了一个新的网络,那这个原来本地代理有一个转交地址,应该怎么处理呢?只要这个本地代理又收到了一个新的转交地址之后,这个旧的就会被覆盖掉了。本地代理就会采用这个新的转交地址。

那接下来第三步呢,就是进行我们刚才所讲的通信过程了。那现在呢主机A啊它玩了很久,玩累了。它就要回到原始的这个归属网络。那回到归属网络首先第一步应该怎么做呢。就是要向本地代理注销转交地址,就是告诉本地代理我们现在已经回来了,你就不需要使用这些转交地址了。那接下来第二步就是按照正常的原始方式通信,也就是如果B要再给A发送一个信息,A直接收到,而不需要本地代理来截获。那当然A要跟外部通信呢,也是源地址添主地址,目的地址呢就添你要发送的那个主机的IP地址就可以了。那移动IP的通信过程呢大家要搞清楚,啊那其实这一块就没有什么难点了。

【知识强化】第四章 网络层 4.8 移动IP的更多相关文章

  1. 【知识强化】第四章 网络层 4.3 IP

    这节课我们来学习一下IP数据报的格式.那之所以把路由算法这一小节跳过呢,就是因为我们之后会要讲到路由的选择协议.那在路由选择协议这一块讲路由算法,我觉得是比较合适的.那我们先来看一下这节课要讲的知识. ...

  2. 【知识强化】第四章 网络层 4.4 IPv4

    这节课我们来学习一个非常重要的概念,就是IPv4地址,其实也是我们常用的IP地址. 首先我们来了解一下,为什么会有IP地址的出现以及它是做什么用的.假如说在很多年前我遇到一个女生非常的漂亮,等了十年之 ...

  3. 【知识强化】第四章 网络层 4.5 IPv6

    这节课我们来学习一下IPv6. 首先呢我们来看一下为什么会有IPv6的产生.由于我们之前探讨过,对于IPv4这种编址方式呢,这个地址线已经被消耗殆尽了,已经没有剩多少地址.所以我们就学习了两种技术,一 ...

  4. 【知识强化】第四章 网络层 4.7 IP组播

    这节课我们来学习一下IP组播. 首先我们来看这样一个问题,IP数据报在网络当中传输的时候,有几种传输方式呢?三种,分别是单播.广播和组播(多播).这个组播呢也叫做多播,它们俩是一个意思.那这个组播是由 ...

  5. Android初级教程理论知识(第四章内容提供器)

    之前第三章理论知识写到过数据库.数据库是在程序内部自己访问自己.而内容提供器是访问别的程序数据的,即跨程序共享数据.对访问的数据也无非就是CRUD. 内容提供者 应用的数据库是不允许其他应用访问的 内 ...

  6. 【知识强化】第二章 数据的表示和运算 2.4 算术逻辑单元ALU

    从本节开始我们就进入到本章的最后一节内容了,也就是我们算术逻辑单元的它的实现.这部分呢是数字电路的一些知识,所以呢,如果你没有学过数字电路的话,也不要慌张,我会从基础开始给大家补起.那么在计算机当中, ...

  7. unix环境高级编程基础知识之第四章

    1.从当前用户转到root用户:直接输入su命令,然后输入root密码,如果之前没有设置root命令密码会登陆不成功,这里需要命令sudo passwd命令设置密码,然后按照上面输入就成:从root命 ...

  8. Java基础知识笔记第四章:类和对象

      编程语言的几个发展阶段 面向机器语言 面向过程语言 面向对象语言:封装.继承.多态 类 类声明 class Person{ ....... } class 植物{ ....... } 类体 类使用 ...

  9. 《计算机网络》谢希仁(第7版) 第四章 c语言http://c.biancheng.net/cpp/html/3137.html

    第四章 网络层 电信网使用面向连接的通信方式,使电信网络能够向用户提供可靠传输的服务. 互联网设计思路:网络层向上只提供简单灵活的.无连接的.尽最大努力交付的数据报(分组)服务. 网络层不提供可靠传输 ...

随机推荐

  1. Go's Declaration Syntax

    Introduction Newcomers to Go wonder why the declaration syntax is different from the tradition estab ...

  2. BZOJ4269 再见xor

    考前挣扎 线性基裸题 mx直接求 次大直接从低到高枚举第一个非0位 然后次大就是异或上就行了[显然贪心呐qwq 不到800b可还行 //Love and Freedom. #include<cs ...

  3. 7.使用dom4j实现增删改查

    1.导入dim4j提供的jar包 (1)dom4j,是一个组织,针对xml解析,提供解析器dom4j (2)dom4j不是javase的一部分(jaxp是的) (3)使用dom4j步骤 - 下载并导入 ...

  4. 一张图理解"Figure", "Axes", "Axis"

    Figure is the object with the highest level in the hierarchy. It corresponds to the entire graphical ...

  5. el-tag标签使用三元表达动态改变type类型

    <el-tag :type="item.payCode=='在线' ? 'success' : 'danger'" >{{item.payCode}}</el-t ...

  6. 【Idea 】插件

    FindBugs-IDEA Maven Helper VisualVM Launcher GenerateAllSetter Rainbow Brackets Translation P3c(Alib ...

  7. sql判断中文、数字、英文

    IF OBJECT_ID('DBO.GET_NUMBER2') IS NOT NULL DROP FUNCTION DBO.GET_NUMBER2 GO )) ) AS BEGIN BEGIN ,'' ...

  8. Python3解leetcode Binary Tree PathsAdd DigitsMove Zeroes

    问题描述: Given an array nums, write a function to move all 0's to the end of it while maintaining the r ...

  9. JavaScript中的编码解码

    1.URI 统一资源标识符(URI)是一个用于标识某一互联网资源名称的字符串.,该种标识允许用户对任何(包括本地和互联网)的资源通过特定的协议进行交互操作.Web上可用的每种资源 -HTML文档.图像 ...

  10. 【靶场练习_sqli-labs】SQLi-LABS Page-1(Basic Challenges)

    GET篇 Less-1:  1.用order by得出待查表里有三个字段 http://192.168.40.165/sqli-labs-master/Less-1/?id=1' order by 3 ...