根据主机配置以及 DNS 和路由基础结构,基于 Windows 的主机可通过 IPv4 或 IPv6,将 DNS 查询发送给 DNS 服务器。默认情况下,基于 Windows 的主机使用动态主机配置协议 (DHCP) 对 DNS 服务器配置的 IPv4 地址,通过 IPv4 发送 DNS 查询。运行 Windows XP、Windows Server 2003、Windows Vista 或 Windows Server“Longhorn”的计算机可使用以下地址,通过 IPv6 发送 DNS 查询:
•DNS 服务器的本地配置的单播地址
使用 netsh interface ipv6 add dns 命令,对主机配置 DNS 服务器的 IPv6 地址。对于运行 Windows Vista 或 Windows Server“Longhorn”的计算机,可以在“连接和适配器”文件夹中,通过 Internet 协议版本 6 (TCP/IPv6) 组件的属性,配置具有 IPv6 地址的 DNS 服务器。
对 DNS 服务器手动配置已知单播地址,并对路由基础结构添加主路由,从而可以从运行 Windows XP、Windows Server 2003、Windows Vista 或 Windows Server“Longhorn”的 IPv6 主机访问 DNS 服务器。
Windows Vista 和 Windows Server“Longhorn”支持面向 IPv6 的动态主机配置协议 (DHCPv6)。可通过 DNS 递归名称服务器 DHCPv6 选项,分配 DNS 服务器的 IPv6 地址。这是对运行 Windows Vista 或 Windows Server“Longhorn”的计算机配置 DNS 服务器 IPv6 地址的首选方法。
Ipconfig.exe 工具提供的 IPv6 配置信息
下面几个小节介绍了针对 Windows XP SP2 和 Windows Vista 的 Ipconfig.exe 工具所显示的 IPv6 配置示例。
不同于全局地址,链路本地和站点本地地址前缀均可以重复使用。链路本地地址前缀重复用于每个链路。站点本地地址前缀可重复用于企业的每个站点。由于地址前缀可重复使用,因此链路本地和站点本地地址并不明确。为了对链路或站点分别指定链路本地地址或站点本地地址,IPv6 使用了另一个称为区域标识符 (ID)(也称为作用域 ID)的标识符。区域 ID 可指定区域,即具有指定作用域的网络连接部分。
RFC 4007 中指定用于识别与本地使用的地址相关联的区域的语法如下:
地址%区域_ID
地址 是本地使用的地址,而 区域_ID 则是代表区域的整数值。区域 ID 的值是根据主机来定义的。因此,不同的主机可能会对相同的物理区域,确定不同的区域 ID 值。譬如,主机 A 可能选择数字 3 来代表一个附加链路的区域,而主机 B 可能会选择数字 4 来代表相同的链路。
对于基于 Windows 的 IPv6 主机,本地使用的地址的区域 ID 定义如下:
•对于链路本地地址,区域 ID 通常为分配了地址或用作链路本地目标的发送接口的接口的接口索引。接口索引是分配给 IPv6 接口(包含一个环回以及一个或多个隧道或 LAN 接口)的以数字 1 起始的整数。可以通过 netsh interface ipv6 show interface 命令,查看接口索引列表。
•对于站点本地地址,区域 ID 就是站点 ID,即分配给企业站点的整数值。对于不重复使用站点本地地址前缀的企业,站点 ID 被默认设为 1,并且无需指定。可以通过 netsh interface ipv6 show address level=verbose 命令,查看站点 ID。
使用 Windows 工具和区域 ID 的具体示例如下:
•ping fe80::2b0:d0ff:fee9:4143%3
此处,3 为附加在包含目标地址的链路上的接口的接口索引。
•tracert fec0::f282:2b0:d0ff:fee9:4143%2
此处,2 为包含目标地址的企业站点的站点 ID。
有关区域 ID 如何表示为分配地址的一部分的具体例子,请在本文中参阅“Ipconfig.exe 工具中的 IPv6 配置”部分的内容。