• 沒有找到結果。

IPv6 第 12 章

12.2 IPv6 的地址配置

IPv6 地址是网络设备或计算机主机接口的逻辑标识,IPv6 协议的一个突出特点是支持网络节 点地址自动配置,极大地简化了网络管理者的工作,本节以图 12-3 为例介绍各种情况下 IPv6 地址 的分配方法。

12.2.1 启用 IPv6 协议

我们给某个网络设备或主机的接口分配 IPv6 的地址,首先需要该设备支持 IPv6 的协议,

Windows Server 2003 和 Windows 7 及以上版本默认已经启用了 IPv6,Windows XP 默认没有启用 IPv6 协议,如图 12-4 所示。

12 Chapter

▲图 12-3 IPv6 地址分配环境

▲图 12-4 Windows XP 默认的协议栈

如果需要在 Host3 安装 IPv6 协议,在 CMD 窗口中执行 ipv6 install 命令,操作如下:

C:\Documents and Settings\Administrator>ipv6 install

在 Host3 的命令提示符下,输入 ipconfig 能够看到 IPv6 的链路本地地址,操作如下:

Ethernet adapter 本地连接:

Connection-specific DNS Suffix. :

Description . . . : VMware Accelerated AMD PCNet Adapter Physical Address. . . : 00-0C-29-7E-E2-57

Dhcp Enabled. . . : Yes Autoconfiguration Enabled . . . . : Yes

Autoconfiguration IP Address. . . : 169.254.72.231 Subnet Mask . . . : 255.255.0.0

IP Address. . . : fe80::20c:29ff:fe7e:e257%5 ---链路本地地址--- Default Gateway . . . :

DNS Servers . . . : fec0:0:0:ffff::1%1

注意:系统启用 IPv6 后所有的接口都会自动获得一个都是以“FE80::/10”为 前缀的链路本地地址,所以在使用链路本地地址进行通信时还必须指明相应的接 口名称或编号。上面的链路本地地址后面的“%5”标识系统 ID 为 5 的接口对应 的链路本地地址,其他的接口有不同的 ID 标识,这个 ID 是系统分配的,只有 本地意义。

12Chapter

Windows 7 系统已经默认启用了 IPv6 的协议,我们可以在 Host2 上查看其 IPv6 的信息。

C:\Users\Administrator>ipconfig

以太网适配器 VMware Network Adapter VMnet1:

连接特定的 DNS 后缀 . . . :

C:\Documents and Settings\Administrator>ping fe80::dad:ffb9:a9f3:d9fe%5 Pinging fe80::dad:ffb9:a9f3:d9fe%5 with 32 bytes of data:

Reply from fe80::dad:ffb9:a9f3:d9fe%5: time<1ms Reply from fe80::dad:ffb9:a9f3:d9fe%5: time<1ms Reply from fe80::dad:ffb9:a9f3:d9fe%5: time<1ms Reply from fe80::dad:ffb9:a9f3:d9fe%5: time<1ms Ping statistics for fe80::dad:ffb9:a9f3:d9fe%5:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds:

Minimum = 0ms, Maximum = 0ms, Average = 0ms

来自 fe80::20c:29ff:fe7e:e257%14 的回复: 时间<1ms 来自 fe80::20c:29ff:fe7e:e257%14 的回复: 时间<1ms 来自 fe80::20c:29ff:fe7e:e257%14 的回复: 时间<1ms 来自 fe80::20c:29ff:fe7e:e257%14 的回复: 时间<1ms fe80::20c:29ff:fe7e:e257%14 的 ping 统计信息:

数据包: 已发送= 4,已接收= 4,丢失= 0(0%丢失)

往返行程的估计时间(以毫秒为单位):

最短= 0ms,最长= 0ms,平均= 0ms

C:\Users\Administrator>ping fe80::20c:29ff:fe7e:e257 ---未指明接口 ID--- 正在 ping fe80::20c:29ff:fe7e:e257 具有 32 字节的数据:

来自 fe80::20c:29ff:fe7e:e257 的回复: 时间<1ms 来自 fe80::20c:29ff:fe7e:e257 的回复: 时间<1ms 来自 fe80::20c:29ff:fe7e:e257 的回复: 时间<1ms 来自 fe80::20c:29ff:fe7e:e257 的回复: 时间<1ms fe80::20c:29ff:fe7e:e257 的 ping 统计信息:

数据包: 已发送= 4,已接收= 4,丢失= 0(0%丢失)

往返行程的估计时间(以毫秒为单位):

最短= 0ms,最长= 0ms,平均= 0ms C:\Users\Administrator>

12 Chapter

fe80::dad:ffb9:a9f3:d9fe icmp6_seq=1 ttl=128 time=0.000 ms fe80::dad:ffb9:a9f3:d9fe icmp6_seq=2 ttl=128 time=0.000 ms fe80::dad:ffb9:a9f3:d9fe icmp6_seq=3 ttl=128 time=1.000 ms fe80::dad:ffb9:a9f3:d9fe icmp6_seq=4 ttl=128 time=2.000 ms fe80::dad:ffb9:a9f3:d9fe icmp6_seq=5 ttl=128 time=1.000 ms

Host1> ping fe80::20c:29ff:fe7e:e257

fe80::20c:29ff:fe7e:e257 icmp6_seq=1 ttl=128 time=135.007 ms fe80::20c:29ff:fe7e:e257 icmp6_seq=2 ttl=128 time=4.001 ms fe80::20c:29ff:fe7e:e257 icmp6_seq=3 ttl=128 time=0.000 ms fe80::20c:29ff:fe7e:e257 icmp6_seq=4 ttl=128 time=8.000 ms fe80::20c:29ff:fe7e:e257 icmp6_seq=5 ttl=128 time=4.000 ms Host1>

在思科路由器上启用 IPv6 协议,需要在全局配置模式中执行 ipv6 unicast-routing 命令,操作 如下:

GW#show ipv6 interface brief FastEthernet0/0 [up/up]

FE80::C801:9FF:FE14:0 GW#

可以在子路由器上使用命令 show ipv6 interface [brief]查看接口 IPv6 的设置情况。

GW#show ipv6 interface FastEthernet0/0 is up, line protocol is up

IPv6 is enabled, link-local address is FE80::C801:9FF:FE14:0 No global unicast address is configured

---省略部分输出---

GW#show ipv6 interface brief FastEthernet0/0 [up/up]

FE80::C801:9FF:FE14:0 GW#

如果从路由器上通过 ping 测试到 Host2 链路本地地址的连通性,需要指出相应的接口 fas0/0,

操作过程如下:

12Chapter GW#ping fe80::dad:ffb9:a9f3:d9fe ---测试到 Host2 接口链路本地地址的连通性---

Output Interface: FastEthernet0/0 ---指明出口--- Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FE80::DAD:FFB9:A9F3:D9FE, timeout is 2 seconds:

Packet sent with a source address of FE80::C801:9FF:FE14:0

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 20/24/28 ms GW#

12.2.2 手工配置 IPv6 地址

Windows XP 和 Windows Server 2003 没有提供图形界面配置 IPv6 的地址、网关及 DNS 等,这 些网络信息可以通过 netsh 命令设置,以 Host3 为例,设置过程如下:

C:\Documents and Settings\Administrator>netsh ---执行 netsh 命令--- netsh>interface ---进入接口视图---

接口 4:Teredo Tunneling Pseudo-Interface

地址类型 DAD 状态 有效寿命 首选寿命 地址

--- --- --- --- --- 链接 首选项 infinite infinite fe80::ffff:ffff:fffd ---省略部分输出---

netsh interface ipv6>add route ::/0 5 fec0:10::10 ---设置默认路由,相当于网关--- netsh interface ipv6>show route ---查看路由(网关)信息---

12 Chapter

索引 DNS 服务器

--- --- 1 fec0:10::11

2 fec0:10::12

netsh interface ipv6>exit ---退出 netsh---

C:\Documents and Settings\Administrator>ipconfig ---查看网络参数的设置--- Windows IP Configuration

Ethernet adapter 本地连接:

Connection-specific DNS Suffix . :

Autoconfiguration IP Address. . . :169.254.72.231 Subnet Mask . . . :255.255.0.0 IP Address. . . :fec0:10::3%1

IP Address. . . :fe80::20c:29ff:fe7e:e257%5 Default Gateway . . . :fec0:10::10%1

Windows 7 的 IPv6 信息设置和 IPv4 类似,除了使用 netsh 还可以通过窗口直接设定,以 Host2 为例,设置方式如图 12-5 所示。

▲图 12-5 Windows 7 中设置 IPv6 的相关信息 在 VPCS 中设置 IPv6 信息的方式如下(以 Host1 为例):

Host1> ip fec0:10::1/64 fec0:10::10 ---设置 IPv6 地址信息--- PC1 : fec0:10::1/64

Host1> show ---验证 IPv6 地址信息---

NAME IP/MASK GATEWAY MAC LPORT RHOST:PORT Host1 0.0.0.0/0 0.0.0.0 00:50:79:66:68:00 10000 10.8.0.100:10001 fe80::250:79ff:fe66:6800/64

fec0:10::1/64 Host1>

在路由器 GW 中手动设置接口 Fas0/0 的 IPv6 地址,操作如下:

GW(config)#interface fastEthernet 0/0 GW(config-if)#ipv6 address fec0:10::10/64 GW(config-if)#end

GW#show ipv6 interface brief

12Chapter FastEthernet0/0 [up/up]

FE80::C801:9FF:FE14:0 FEC0:10::10

GW#

从路由器使用 ping 命令测试到每个主机的连通性,操作过程如下:

GW#ping fec0:10::1 Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FEC0:10::1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 24/28/32 ms

GW#ping fec0:10::2 Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FEC0:10::2, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 20/34/72 ms

GW#ping fec0:10::3 Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FEC0:10::3, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 12/25/36 ms GW#

12.2.3 无状态自动配置

前面我们介绍过,一个典型的 IPv6 主机单播地址由 3 部分组成:全局路由前缀、子网 ID 和接 口 ID(64 位)。全局路由前缀用来识别分配给一个站点或企业的一个地址范围;子网 ID 也称为子 网前缀,一个子网 ID 与一个链接相关联,以识别站点中的某个链接或网段;接口 ID 用来识别链 接上的某个接口,在该链接上是唯一的,接口 ID 的配置方式有以下 3 种:

 网络管理员手动配置。

 通过系统软件生成。

 采用扩展唯一标识符(EUI-64)格式生成。

就实用性而言,EUI-64 格式是 IPv6 生成接口 ID 最常用的方式。IEEE EUI-64 标准采用接口的 MAC 地址生成 IPv6 接口 ID。MAC 地址只有 48 位,而接口 ID 却要求 64 位。MAC 地址的前 24 位代表厂商 ID,后 24 位代表制造商分配的唯一扩展标识。MAC 地址的第七高位是一个 U/L 位,

值为 1 时表示 MAC 地址全局唯一,值为 0 时表示 MAC 地址本地唯一。在 MAC 地址向 EUI-64 格 式的转换过程中,在 MAC 地址的前 24 位和后 24 位之间插入了 16 比特的 FFFE,并将 U/L 位的值 从 0 变成了 1,这样就生成了一个 64 比特的接口 ID,且接口 ID 的值全局唯一,如图 12-6 所示。

IPv6 支持无状态地址自动配置,无需使用如 DHCP 之类的辅助协议,只要在路由器的接口配 置一个 64 位的网络前缀,该网络的每个节点即可获取该 IPv6 的前缀并结合 64 位的接口 ID 形成一 个 128 位的 IPv6 全球单播地址。

路由器发现功能是 IPv6 地址自动配置功能的基础,其工作过程如图 12-7 所示。

IPv6 地址自动配置主要通过以下两种报文实现:

 RA 报文:每台路由器为了让二层网络上的主机和其他路由器知道自己的存在,定期以组

12 Chapter

播方式(FF02::1)发送携带网络配置参数的 RA 报文。

 RS 报文:主机接入网络后可以主动发送 RS 报文,RS 报文是由路由器定期发送的,但是 如果主机希望能够尽快收到 RS 报文,它可以立刻主动通过组播(FF02::2)发送 RS 报文 给路由器。网络上的路由器收到该 RS 报文后会立即向相应的主机单播回应 RA 报文,告 知主机该网段的默认路由器和相关配置参数。

▲图 12-6 EUI-64 接口 ID 的形成

▲图 12-7 IPv6 地址自动配置

网关设备在给接口分配 IPv6 单播地址之前会进行重复地址检测(DAD),确认是否有其他的节点 使用了该地址,其作用和 IPv4 中的免费 ARP 类似,用于地址分配或主机连接网络时检测重复的主机 地址。如果网关收到某个其他站点回应的邻居通告(NA)报文,就证明该地址已被网络使用,节点将 不能使用它进行通信,这时网络管理员需要手动为该节点分配另外一个地址。尽管在自动配置的情况 下出现地址重复的概率非常小,但进行 DAD 检测是很必要的,尤其是在地址自动配置的时候。

在路由器 GW 上通过无状态自动配置设置接口 Fas0/0 的 IPv6 地址并验证,操作如下:

GW(config)#interface fastEthernet 0/0

GW(config-if)#ipv6 address fec0:10::/64 eui-64 GW(config-if)#no shut

GW(config-if)#end

12Chapter GW#show interface fastEthernet 0/0

FastEthernet0/0 is up, line protocol is up

Hardware is DEC21140, address is ca01.0914.0000 (bia ca01.0914.0000) ---MAC--- MTU 1500 bytes, BW 100000 Kbit/sec, DLY 100 usec,

---省略部分输出---

GW#show ipv6 interface fastEthernet 0/0 FastEthernet0/0 is up, line protocol is up

IPv6 is enabled, link-local address is FE80::C801:9FF:FE14:0 ---链路本地地址---

ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled

ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds ND advertised reachable time is 0 milliseconds ND advertised retransmit interval is 0 milliseconds ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds

Hosts use stateless autoconfig for addresses. ---主机地址采用无状态自动配置方式---

Ethernet adapter 本地连接:

Connection-specific DNS Suffix . :

Description . . . :VMware Accelerated AMD PCNet Adapter Physical Address. . . :00-0C-29-7E-E2-57

Dhcp Enabled. . . : Yes Autoconfiguration Enabled . . . . : Yes

Autoconfiguration IP Address. . . : 169.254.72.231 Subnet Mask . . . : 255.255.0.0

12 Chapter

Windows IP 配置

以太网适配器 VMware Network Adapter VMnet8:

描述. . . :VMware Virtual Ethernet Adapter for VMnet8 Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FEC0:10::2050:79FF:FE66:6800, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 24/30/44 ms GW#ping fec0:10::b087:c227:596f:362f ---测试到 Host2 的连通性--- Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FEC0:10::B087:C227:596F:362F, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 20/28/40 ms

GW#ping fec0:10::20c:29ff:fe7e:e257 ---测试到 Host3 的连通性--- Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to FEC0:10::20C:29FF:FE7E:E257, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 24/34/64 ms GW#

12Chapter

服务器只分配除 IPv6 地址以外的配置参数。

DHCPv6 客户端在向 DHCPv6 服务器发送请求报文之前会发送 RS 报文,在同一链路范围的路 由器接收到此报文后会回复 RA 报文,在 RA 报文中包括管理地址配置标记(M)和有状态配置标 记(O)。当 M 取值为 1 时,启用 DHCPv6 有状态地址配置,即 DHCPv6 客户端需要从 DHCPv6 服务器获取 IPv6 地址;取值为 0 时,则启用 IPv6 无状态地址自动分配方案。当 O 取值为 1 时,定 义客户端需要通过有状态的 DHCPv6 来获取其他网络配置参数,如 DNS、NIS、SNTP 服务器地址 等;取值为 0 时,则启用 IPv6 无状态地址自动分配方案。

默认情况下思科路由器发送的 RA 信息中 M=0/O=0,客户端向服务器请求地址时使用的是无 状态自动配置的方式,过程如图 12-8 所示。

▲图 12-8 DHCPv6 无状态自动配置

所以在默认情况下,IPv6 客户端如果设置成自动获取地址,不会获得 DNS 信息,如果让客户

所以在默认情况下,IPv6 客户端如果设置成自动获取地址,不会获得 DNS 信息,如果让客户

相關文件