6.3 ISATAP隧道技术

(1)基本概念

  ①在一个IPv4网络中主机与路由器之间创建一条ISATAP隧道,以便让该主机可以访问IPv6网络中的资源。

  ②条件:IPv4中的PC主机需要支持IPv4和IPv6双栈协议,然后需要一台支持ISATAP的路由器。该路由器可以在网络中的任何位置,只要PC能通过IPv4地址ping通它

  ③当IPv4中的PC主机需要访问IPv6资源时,需要先与ISATAP路由器建立ISATAP隧道,然后根据路由器提供的IPv6前缀构造自己的IPv6地址,并将这台路由器设置为自己的IPv6默认网关。如此一来,这台PC就能够通过ISATAP路由器访问IPv6资源。

(2)ISATAP隧道技术原理

Ⅰ. ISATAP路由器配置:

  A.分配IPv4地址:2.2.2.2/24。

  B.创建tunnel接口用于ISATAP,该接口会根据IPv4产生一个64位的接口标识,并搭配fe80::形成tunnel接口的LinkLocal地址,格式fe80::0000:5efe:x.x.x.x(其中的x.x.x.x为IPv4地址)

  C.为tunnel接口配置一个全局单播IPv6地址,可以手工配置,也可以通过+EUI64的方式构成的。如2001:1111::0000:5efe:0202.0202/64。

Ⅱ. ISATAP主机配置:

  A.Win7系统上默认安装了IPv6协议栈,默认就会有一个ISATAP的虚拟网卡

  B.当给PC的物理网卡配置IPv4地址(如1.1.1.1/24),ISATAP虚拟网卡会自动根据该地址计算出一个LinkLocal地址,格式如:fe80::0200:5efe:1.1.1.1(或fe80::0200:5efe:0101.0101)。

Ⅲ. 当主机上配置了ISATAP后(用netsh命令,使其指向ISATAP路由器,见后面例子),会向ISATAP路由器发送RS消息请求IPv6前缀(如上图中的①)。

Ⅳ. 这个RS消息会在IPv4网络中被路由,最终转到ISATAP路由器。这将使得路由器立即以一个RA进行回应,这个RA消息里就包含ISATAP上所配置的那个IPv6全局单播地址的前缀

Ⅴ. PC主机收到RA回应后,会拿出里头的IPv6前缀,随后在后面加上自己的ISATAP虚拟网卡的64位接口标识地址,构成一个IPv6全局单播地址,同时产生一条默认路由,指向ISATAP路由器的LinkLocal地址

Ⅵ. 至此,PC主机就可以访问IPv6网络中的资源。它首先将IPv6数据包封装在IPv4数据包中,然后传给ISATAP路由器,再由ISATAP路由器解封装后转发给IPv6网络。

(3)ISATAP隧道实验

  ①R1路由器配置

//R1路由器
R1#conf t
R1(config)#interface fastEthernet /
R1(config-if)#ip address 192.168.10.10 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#interface serial /
R1(config-if)#clock rate
R1(config-if)#ip address 131.107.0.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit

  ②R2路由器配置

R2#config t
R2(config)#ipv6 unicast-routing //启用IPv6路由转发功能
R2(config)#interface serial /
R2(config-if)#ip address 131.107.0.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#interface serial /
R2(config-if)#clock rate
R2(config-if)#ipv6 address :::/
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#ip route 192.168.10.0 255.255.255.0 131.107.0.1
R2(config)#ipv6 route :::/ :::
R2(config)#interface tunnel //配置ISATAP隧道接口
R2(config-if)#ipv6 address :::/ eui- //必须指定用eui-64方式
R2(config-if)#no ipv6 nd suppress-ra //在IPv6的接口上不会发送路由器公告报文
R2(config-if)#tunnel source 131.107.0.2 //隧道接口源地址
R2(config-if)#tunnel mode ipv6ip isatap
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#
R2#show running-config //查看路由器运行配置

  ③R3路由器配置

R3#conf t
R3(config)#ipv6 unicast-routing
R3(config)#interface serial /
R3(config-if)#ipv6 address :::/
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#interface fastEthernet /
R3(config-if)#ipv6 address :::/
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#ipv6 route :::/ :::
R3(config)#exit

(4)Win7和Win8虚拟机设置

  ①Win8:设置IPv6地址为:2001:1::2/64,默认网关为2001:2::1

  ②Win7:IPv4地址(192.168.10.20/24,默认网关192.168.10.10),IPv6地址为自动获取。同时配置ISATAP隧道以管理员身份运行CMD):C:\Windows\system32>netsh interface ipv6 isatap set route 131.107.0.2  //使Win7指向ISATAP路由器。

  ③测试:在Win7上ping 2001:1::2

//给计算机配置ISATAP隧道,使其指向ISATAP路由器
C:\Windows\system32>netsh interface ipv6 isatap set route 131.107.0.2 //指向ISATAP路由器
确定。
C:\Windows\system32>ipconfig /all 以太网适配器 mynet: 连接特定的 DNS 后缀 . . . . . . . :
描述. . . . . . . . . . . . . . . : Intel(R) PRO/ MT Network Connection
物理地址. . . . . . . . . . . . . : -0C--CB-FB-8B
DHCP 已启用 . . . . . . . . . . . : 否
自动配置已启用. . . . . . . . . . : 是
本地链接 IPv6 地址. . . . . . . . : fe80::244b:cbc4:696e:2be1%(首选)
IPv4 地址 . . . . . . . . . . . . : 192.168.10.20(首选)
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 192.168.10.10
DHCPv6 IAID . . . . . . . . . . . :
DHCPv6 客户端 DUID . . . . . . . : -----9E-E3-1D--0C--CB-FB-8B DNS 服务器 . . . . . . . . . . . : 8.8.8.8
TCPIP 上的 NetBIOS . . . . . . . : 已启用 隧道适配器 isatap.{7CA5AC9B-1CDF-4B45-B5BA-875A2767632E}: //ISATAP虚拟网卡的接口设置 连接特定的 DNS 后缀 . . . . . . . :
描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter
物理地址. . . . . . . . . . . . . : -------E0
DHCP 已启用 . . . . . . . . . . . : 否
自动配置已启用. . . . . . . . . . : 是
IPv6 地址 . . . . . . . . . . . . : 2001:3::5efe:192.168.10.20(首选) //获取的IPv6前缀:2001:3::/64
本地链接 IPv6 地址. . . . . . . . : fe80::5efe:192.168.10.20%12(首选) //本地链路地址
默认网关. . . . . . . . . . . . . : fe80::5efe:131.107.0.2%12 //自动将ISATAP路由器设为网关
DNS 服务器 . . . . . . . . . . . : 8.8.8.8
TCPIP 上的 NetBIOS . . . . . . . : 已禁用 C:\Windows\system32>ping ::: 正在 Ping ::: 具有 字节的数据:
来自 ::: 的回复: 时间=95ms
来自 ::: 的回复: 时间=60ms
来自 ::: 的回复: 时间=91ms
来自 ::: 的回复: 时间=121ms ::: 的 Ping 统计信息:
数据包: 已发送 = ,已接收 = ,丢失 = (% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 60ms,最长 = 121ms,平均 = 91ms C:\Windows\system32>

第11章 拾遗5:IPv6和IPv4共存技术(2)_ISATAP隧道技术的更多相关文章

  1. 第11章 拾遗5:IPv6和IPv4共存技术(1)_双栈技术和6to4隧道技术

    6. IPv6和IPv4共存技术 6.1 双栈技术 (1)双协议主机的协议结构 (2)双协议栈示意图 ①双协议主机在通信时首先通过支持双协议的DNS服务器查询与目的主机名对应的IP地址. ②再根据指定 ...

  2. 第11章 拾遗5:IPv6和IPv4共存技术(3)_NAT-PT技术【全书完】

    6.4 NAT-PT (1)NAT-PT和NAT的差别 ①NAT-PT(附带协议转换的网络地址转换)技术秉承NAT技术的思想,但在原理方面大有不同. ②NAT-PT和NAT本质的区别在于应用场合的不同 ...

  3. 第11章 拾遗4:IPv6(1)_报文格式和地址类型

    1. IPv4和IPv6协议栈的比较 (1)IPv6取代IPv4,支持IPv6的动态路由协议都属于IPv6协议(如RIPng.OSPFv3). (2)Internet控制消息协议IPv6版(ICMPv ...

  4. 第11章 拾遗4:IPv6(2)_给计算机配置IPv6地址

    4. 给计算机配置IPv6地址 4.1 无状态自动配置IPv6地址 (1)网络拓扑 ①无状态地址自动配置是指不需要DHCP服务器进行管理,由客户端向路由器发送前缀请求(RS)询问其所在网段.路由器收到 ...

  5. 第11章 拾遗4:IPv6(3)_配置IPv6路由

    5. 配置IPv6路由 5.1 配置IPv6静态路由 (1)在路由器上配置静态路由(以R1路由器为例) //静态路由 R1#config t R1(config)#ipv6 unicast-routi ...

  6. 第11章 拾遗3:虚拟局域网(VLAN)

    1. 虚拟局域网(VLAN) (1)VLAN是建立在物理网络基础上的一种逻辑子网,它将把一个LAN划分成多个逻辑的局域网(VLAN),每个VLAN是一个广播域,VLAN内的主机间通信就和在一个LAN内 ...

  7. 第11章 拾遗1:网络地址转换(NAT)和端口映射

    1. 网络地址转换(NAT) 1.1 NAT的应用场景 (1)应用场景:允许将私有IP地址映射到公网地址,以减缓IP地址空间的消耗 ①需要连接Internet,但主机没有公网IP地址 ②更换了一个新的 ...

  8. [转帖]IPV6取代IPV4之路 为何道阻且长?

    IPV6取代IPV4之路 为何道阻且长? 经济学人公众号 IPV6作为IPV4的续命神术,从被提出到现今,逾26年之久.而IPV6在中国更是犹抱琵琶半遮面,千呼万唤难出来,IPV6取代IPV4之路,为 ...

  9. ipv6转ipv4 NAT64与DNS64基本原理概述

    原文: https://blog.csdn.net/zhangjie1989/article/details/51464251 1.NAT64与 DNS64背景 在 IPv6网络的发展过程中,面临最大 ...

随机推荐

  1. 对象的释放Dispose和Close对比

    C#内存释放的几个方法对比: 而Close与Dispose这两种方法的区别在于,调用完了对象的Close方法后,此对象有可能被重新进行使用:而Dispose方法来说,此对象所占有的资源需要被标记为无用 ...

  2. Ts基础

    //typeof 用来判断变量类型 var s: string = 'egret'; var isString: boolean = typeof s === 'string'; console.lo ...

  3. javascript UI lib

    react 现在已经有JS,android,IOS版本的了 react作为View层的库,结合Flux react native Angular 是 MVVM, React 是 Flux(或者 MVC ...

  4. xlsx 库 知识点

    官方github地址:https://github.com/SheetJS/js-xlsx xlsx 用webpack打包后体积太大: vue-cli构建的项目,优化办法:https://segmen ...

  5. chmod修改权限

    1.命令简介 chmod(Change mode) 用来将每个文件的模式更改为指定值.Linux/Unix 的档案调用权限分为三级 : 档案拥有者.群组.其他. u :目录或者文件的当前的用户 g : ...

  6. 运行成功的Demo(Python+Appium)

    原文摘自:廖丹  http://www.cnblogs.com/android-it/p/8805659.html 1.打开Appium运行 2.在Pycharm输入代码如下所示: from appi ...

  7. Oracle存储过程和自定义函数笔记

    学习地址:https://www.imooc.com/learn/370 存储过程和存储函数定义:指存储在数据库中供所有用户程序调用的子程序叫做存储过程 .存储函数. 相同点:完成特定功能的程序.区别 ...

  8. 基于redis的乐观锁实践

    redis真是一个分布式应用场景下的好东西,对于我们的应用设计,功劳大大的! 今天要研究的是基于redis的事务机制以及watch指令(CAS)实现乐观锁的过程. 所谓乐观锁,就是利用版本号比较机制, ...

  9. redis连接错误处理方案分享

    今天为了搞压测,定位是不是redis瓶颈. 在我们的服务器10.90.2.101上安装了一个redis,版本(redis-3.2.8.tar.gz),没有做任何配置,直接make & make ...

  10. golang里json的处理配合struct是相当方便

    type Feed struct { Name string `json:"site"` URI string `json:"link"` Type strin ...