6.3 ISATAP隧道技术

(1)基本概念

第11章 拾遗5:IPv6和IPv4共存技术(2)_ISATAP隧道技术-LMLPHP

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

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

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

(2)ISATAP隧道技术原理

第11章 拾遗5:IPv6和IPv4共存技术(2)_ISATAP隧道技术-LMLPHP

Ⅰ. 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隧道实验

第11章 拾遗5:IPv6和IPv4共存技术(2)_ISATAP隧道技术-LMLPHP

  ①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>
04-19 20:48