2011年8月
ISATAP隧道
ISATAP ( Intra-Site Automatic Tunnel Addressing Protocol,站间自动隧道寻址协议)是一种地址分配和主机到主机、主机到路由器和路由器到主机的自动隧道技术.它为IPv6主机之间提供了跨越IPv4内部网络的单播IPv6连通性。ISATAP一般用于IPv4网络中的IPv6/IPv4结点间的通信。ISATAP使用本地管理的接口标识符::0:5EFE:w.x.y.z,其中,0: 5EFE部分是由Internet号码分配中心(IANA)所分配的机构单元标识符(00-00-5E)和表示内嵌的IPv4地址类型的类型号(FE)组合而成的;w.x.y.z部分是任意的单播IPv4地址,既可以是私有地址,也可以是公共地址。
任何有效的IPv6单播地址的64位前缀都可以和ISATAP接口标识符相结合,它们包括链路本地地址前缀(FE80::/64)、全球前缀(包括6 to 4前缀)和站点本地前缀。
ISATAP地址中也包含了一个内嵌的IPv4地址,这一点与IPv4映射地址、6 over 4地址和6 to 4地址类似。内嵌的IPv4地址的作用是:在发往ISATAP地址的IPv6通信流通过隧道跨越了IPv4网络后,可用它来确定IPv4报头中的源IPv4地址或目标IPv4地址。
示例:配置ISATAP隧道
本实验使用Dynamips软件创建的网络环境进行配置,Packet Tracer不支持本实验。网络拓扑如图10-19所示,按照图示配置网络中路由器的IPv4地址和IPv6地址,并添加路由表使IPv4的网络能够畅通。
▲图10-19 ISATAP隧道实验环境
注意 |
IPv4网络不能有网络地址转换,否则会失败。 |
实验步骤如下。
(1)在RA路由器上的配置:
RA#configt
RA(config)#interface Serial 2/0
RA(config-if)#clock rate 64000
RA(config-if)#ip address 192.168.0.1 255.255.255.0
RA(config-if)#no sh
RA(config-if)#ex
RA(config)#interface Fa 1/0
RA(config-if)#ip address 192.168.1.1 255.255.255.0
RA(config-if)#no sh
(2)在RB路由器上的配置:
RB(config)#ipv6 unicast-routing
RB(config)#interface Serial 2/1
RB(config-if)#clock rate 64000
RB(config-if)#ipv6 address 2001:2::1/64
RB(config-if)#no sh
RB(config-if)#ex
RB(config)#interface Serial 2/0
RB(config-if)#ip address 192.168.0.2 255.255.255.0
RA(config-if)#no sh
RB(config-if)#ex
RB(config)#ipv6 route 2001:1::/64 2001:2::2
--添加到达2001:1::/64网段的路由
RB(config)#ip route 192.168.1.0 255.255.255.0 192.168.0.1
(3)在RB上配置ISATAP接口。
RB(config)#interface Tunnel0
RB(config-if)#ipv6 address 2001:3::/64 eui-64
--注意IPv6的必须使用eui-64方式指定
RB(config-if)#no ipv6 nd suppress-ra
--在 IPv6 的接口上将不会发送路由器公告报文
RB(config-if)#Tunnel Source 192.168.0.2
RB(config-if)#Tunnel mode ipv6ip ?
6to4 IPv6 automatic tunnelling using 6to4
auto-tunnel IPv6 automatic tunnelling using IPv4 compatible addres
isatap IPv6 automatic tunnelling using ISATAP
RB(config-if)#tunnel mode ipv6ip isatap
RB(config-if)#no sh
必须使用eui方式指定Tunnel 0接口的IPv6地址。
配置了一个Interface Tunnel 0,为该接口配置了一个IPv6地址,并且指定了隧道的
源地址,并配置隧道模式为ISATAP。现在ISATAP路由器就配置好了,下面配置
IPv6网络中的计算机PC0,指定ISATAP路由器的地址192.168.0.2,ISATAP路由
器则会为PC0分配一个IPv6地址2001:3::5efe:192.168.0.2,IPv4的计算机都会被分
配到2001:3::/63网段。
(4)在RB路由器上查看运行的配置。
RB#show running-config --可以看到interface Tunnel0的配置,以下是部分输出
interface Tunnel0
no ip address
no ip redirects
ipv6 address 2001:3::/64 eui-64
no ipv6 nd suppress-ra
tunnel source 192.168.0.2
tunnel mode ipv6ip isatap
!
(5)在RC上的配置,配置隧道。
RC(config)#ipv6 unicast-routing
RC(config)#interface fastEthernet 1/0
RC(config-if)#ipv6 address 2001:1::1/64
RC(config-if)#no sh
RC(config-if)#ex
RC(config)#interface Serial 2/1
RC(config-if)#ipv6 address 2001:2::2/64
RC(config-if)#clock rate 64000
RC(config-if)#no sh
RC(config)#ipv6 route 2001:3::/64 2001:2::1
--添加到达2001:3::/64网段的路由
(6)在IPv4的计算机上配置ISATAP隧道。
ISATAP客户端可以是Windows XP、Windows Server 2003、Windows 7、Windows Server 2008。Windows Server 2003、Windows 7、Windows Server 2008默认已经启用了IPv6。
Windows XP需要安装IPv6协议,才能配置ISATAP隧道。必须保证Windows XP计算机能够和ISATAP路由器的接口Se2/0通信。
如图10-20所示,在命令提示符下,输入ipconfig,能够看到IPv6的本地链路地址。
▲图10-20 配置IPv6地址
在命令提示符下ping RB路由器的IPv4地址。确保能够ping通。
在命令提示符下输入以下命令,为计算机配置ISATAP隧道。
C:\ >netsh interface ipv6 ISATAP set router 192.168.0.2
如图10-21所示,指定ISATAP路由器地址,ISATAP路由器就会分配给计算机一个路由器前缀,所有配置了ISATAP隧道的计算机都会分配到一个IPv6网段,也就是和ISATAP路由器的Tunnel 0接口在同一个网段。
▲图10-21 配置ISATAP隧道
如图10-22所示,再次输入ipconfig,你能看到ISATAP路由器配置给计算机的IPv6地址,可以看到该地址是2001:3::+ 5efe + IPv4地址构成的。如果没有出现自动配置的2001:3::网段,禁用、启用网卡即可解决。
▲图10-22 ISATAP路由器分配给计算机的IPv6地址
(7)使用配置了ISATAP隧道的IPv4网络中的计算机测试到IPv6网络的连通性。
使用网络拓扑中的PC0 ping RC路由器的Fa1/0接口。
C:\>ping 2001:1::1
Pinging 2001:1::1 with 32 bytes of data:
Reply from 2001:1::1: time=11ms
Reply from 2001:1::1: time=1ms
Reply from 2001:1::1: time=2ms
Reply from 2001:1::1: time=1ms
Ping statistics for 2001:1::1:
Packets: Sent = 4,Received = 4, Lost = 0 (0% loss)
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 11ms, Average = 3ms
到目前为止,IPv4网络中的计算机能访问IPv6网络中的计算机。