《深入解析IPv6(第3版)》——2.5 手动配置IPv6协议

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

本节书摘来自异步社区《深入解析IPv6(第3版)》一书中的第2章,第2.5节,作者: 【美】Joseph Davies 更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.5 手动配置IPv6协议

不同于Windows XP和Windows Server 2003中的IPv6,Windows Server 2012、Windows Server 2008 R2、Windows Server 2008、Windows 8、Windows 7和Windows Vista中的IPv6协议已经被安装并且默认开启了。Windows的IPv6协议在设计时的目标就是实现自动配置。例如,能够自动配置用于链路上节点间通信的本地链路地址。如果主机子网中有一台IPv6路由器或存在一台ISATAP路由器,那么主机就可以使用接收到的路由器通告信息来自动配置其他的地址、默认路由器以及其他的配置参数了。

用户也可以通过如下方式在Windows中手动配置IPv6地址和其他参数。

  • Internet Protocol Version 6(TCP/IPv6)组件的属性:就像用户可以通过“网络连接”文件夹下的Internet Protocol Version 4(TCP/IPv4)组件属性来配置IPv4设置一样,他们现在也可以通过Internet Protocol Version 6(TCP/IPv6)组件属性来配置IPv6设置。配置IPv6的一系列对话框与相应的IPv4配置对话框非常相似。不过,Internet Protocol Version 6(TCP/IPv6)组件属性只提供了IPv6的基本配置。
  • Windows PowerShell:可以使用Windows PowerShell命令Set-NetIPAddress、Set-NetIPInterface 、Set-NetIPv6Protocol 、Set-NetNeighbor和Set-NetRoute来进行配置(只适用于运行Windows Server 2012或Windows 8的计算机)。
  • Netsh.exe工具:可以在Netsh.exe工具的interface ipv6文本命令来配置IPv6的设置。netsh interface ipv6命令提供了完整的IPv6配置方案。
    虽然通常的IPv6主机并不需要手动配置,但IPv6路由器则必须手动进行配置。

2.5.1 通过Internet Protocol Version 6(TCP/IPv6)的属性来配置IPv6
通过“网络连接”文件夹来手动配置IPv6协议,可以按照如下步骤进行。

1.在网络连接文件夹中,右键单击要配置的连接或网络适配器,然后单击“属性”(Properties)选项。

2.在连接或网络适配器属性的“网络”(Networking)选项卡中,在“此连接使用下列项”(This Connection Use The Following Items)下的列表中双击Internet协议版本6(TCP/IPv6)。

Windows会显示“Internet协议版本6属性”(Internet Protocol Version 6 Properties)的对话框。图2-3所示即为该对话框的示例。


5a49901c103db71149da22eff7fda83d9ffb81f9

常规(General)选项卡

在“Internet协议版本6(TCP/IPv6)属性”对话框的“常规”选项卡中,可以进行如下配置。

  • 自动获取IPv6地址(Obtain an IPv6 address automatically):指定该连接或网络适配器自动获取IPv6地址,这个地址获取的过程是通过状态化的或无状态的地址自动配置来实现的。
  • 使用如下IPv6地址(Use the following IPv6 address):指定此连接或网络适配器的IPv6地址和默认网关通过手动配置的方法获得。 - IPv6地址(IPv6 address):提供空白位置来输入IPv6单播地址。还可以通过“高级TCP/IP设置”(Advanced TCP/IP Setting)对话框指定更多的IPv6地址。
  • 子网前缀长度(Subnet prefix length):提供空白位置以输入IPv6地址的子网前缀长度。对于常见的IPv6单播地址,这个值应该设置为64,即默认值。
  • 默认网关(Default gateway):提供空白位置来输入IPv6单播地址的默认网关。
  • 自动获取DNS服务器地址(Obtain DNS server address automatically):指定DNS服务器的IPv6地址通过自动获取来获得,这个地址获取的过程是通过状态化的或无状态的地址自动配置来实现的(DHCPv6)。
  • 使用如下DNS服务器地址(Use the following DNS server address):指定此连接或网络适配器的首选和备选DNS服务器的IPv6地址通过手动配置来获得。
  • 首选DNS服务器(Preferred NDS server):提供空白位置以输入首选DNS服务器的IPv6地址。
  • 备选DNS服务器(Alternate DNS server):提供空白位置以输入备选DNS服务器的IPv6地址。还可以通过“高级TCP/IP设置”(Advanced TCP/IP Setting)对话框设置更多的DNS服务器。

高级TCP/IP设置(Advanced TCP/IP Setting)

在“常规”选项卡中,单击“高级”(Advanced)按钮就可以进入“高级TCP/IP设置”对话框。这个对话框非常类似于Internet协议版本4(TCP/IPv4)组件的“高级TCP/IP设置”对话框,两者的区别是这里没有WINS选项卡(IPv6并不使用NetBIOS和Windows Internet命名服务[WINS])和“选项”选项卡(TCP/IP过滤只适用于IPv4流量)。对于IPv6,“高级TCP/IP设置”对话框有“IP设置”(IP Settings)和“DNS”选项卡。图2-4所示为“IP设置”选项卡的示例。


<a href=https://yqfile.alicdn.com/84aba88d78d4a78fc97af494077f230617fd519c.png" >

在“IP设置”选项卡中,可以进行如下配置。

  • 多个IPv6地址(单击IP地址[IP address]下的“添加”[Add]按钮):对于每个单播IPv6地址,必须指定IPv6地址和子网前缀长度。只有选中“Internet协议版本6(TCP/IPv6)属性”对话框 “常规”选项卡的“使用如下IPv6地址”(Use the following IPv6 address)时,“添加”(Add)按钮才能够使用。
  • 多默认网关(单击默认网关[Default gateways]下的添加[Add]按钮):每个默认网关都要指定一个网关的IPv6地址,并指定与之相关的默认路由的度量值(metric)应该手动设置还是根据连接或适配器的速度设定。
  • 路由度量:对与IPv6地址或默认网关的配置相关的路由,也可以设置是使用指定的度量值,还是由连接或适配器的速度来决定度量值。

图2-5所示为DNS选项卡的示例。


291adc6cdea8e24b1eca5e0efeb40a04d8448b30

在DNS选项卡中,用户可以配置以下内容。

DNS服务器的IPv6地址(单击DNS服务器地址,按使用顺序排列[DNS server addresses, in order of use]下的“添加”[Add]按钮)是按使用顺序排列的。
首选及指定连接的DNS后缀、域名注册和授权行为。这些设置和IPv4中的相同。
2.5.2 用Windows PowerShell配置IPv6
Windows 2012和Windows 8的Windows PowerShell命令行也可以对IPv6地址、默认网关和DNS服务器进行配置。

配置地址

配置IPv6地址可以使用命令New-NetIPAddress来实现。比如,如果要在名为“Wired Ethernet Connection”的接口上配置IPv6单播地址2001:db8:290c:1291::1,就要使用如下命令:

New-NetIPAddress –InterfaceAlias "Wired Ethernet Connection" –IPAddress 2001:db8:290c:1291::1

添加默认网关

配置默认网关可以使用命令New-NetRoute来实现。比如,如果要在名为“Wired Ethernet Connection”的接口上添加一条默认路由,即将下一条地址设置为fe80::2aa:ff:fe9a:21b8,就要使用如下命令:

New-NetRoute–DestinationPrefix::/0–InterfaceAlias "Wired Ethernet Connection" –NextHop fe80::2aa:ff:fe9a:21b8

添加DNS服务器

配置DNS服务器的IPv6地址可以使用命令Set-DnsClientServerAddress来实现。比如,如果要在名为“Wired Ethernet Connection”的接口上添加一个IPv6地址为2001:db8:99:4acd::8的DNS服务器,就要使用如下命令:

Set-DnsClientServerAddress -InterfaceAlias "Wired Ethernet Connection" 
-ServerAddresses 2001:db8:99:4acd::8

注释

本节只会描述如何在Windows PowerShell命令行中通过命令来添加地址、默认网关和DNS服务器。除此之外,Windows PowerShell命令行还有很多其他用来配置IPv6设置和IPv6组件的命令。
2.5.3 用Netsh.exe工具配置IPv6
用户也可以通过在命令行中使用netsh interface ipv6形式的命令,来配置IPv6地址、默认网关和DNS服务器。

配置地址

配置IPv6地址可以使用命令netsh interface ipv6 add address来实现,该命令语法如下。

netsh interface ipv6 add address [interface=] Interface NameorIndex [address=] IPv6 Address [/PrefixLength] [[type=] unicast|anycast] [[validlifetime=] Time|infinite] [[preferredlifetime=] Time|infinite] [[store=] active|persistent]
  • interface:连接或适配器的名称或接口编号。
  • address:要添加的IPv6地址,后接子网前缀长度(可选,默认值为64)。
  • type:IPv6地址的类型,可以是单播(默认)或任播。
  • validlifetime:地址保持有效的生存时间。生存时间的值可以用日、小时、分钟和秒表示(如1d2h3m4s)。默认值是infinite(无穷)。
  • preferredlifetime:地址保持选用的生存时间。生存时间的值可以用日、小时、分钟和秒表示。默认值是infinite(无穷)。
  • store:IPv6地址如何进行存储。可以是active(系统重启时地址会消失)或persistent(系统重启后地址仍保留)。后者为默认值。

例如,如果要在名为“Local Area Connection”的接口上配置IPv6单播地址2001:db8:290c:1291::1,让这个地址长期有效且处于被选用的状态,而且该地址在系统重启之后仍然保留,要使用如下命令:

netsh interface ipv6 add address "Local Area Connection" 2001:db8:290c:1291::1

添加默认网关

配置默认网关可以使用命令netsh interface ipv6 add route来实现,并添加一条默认路由(::/0),该命令语法如下。

netsh interface ipv6 add route [prefix=]::/0 [interface=] InterfaceNameorIndex [[nexthop=] IPv6Address] [[siteprefixlength=] Length] [[metric=] MetricValue] [[publish=]no|yes|immortal] [[validlifetime=]Time|infinite] [[preferredlifetime=]Time|infinite] [[store=]active|persistent]
  • prefix:默认路由的IPv6地址前缀和前缀长度。若是其他路由,则将::/0替换为地址前缀/前缀长度。
  • interface:连接或适配器的名称或接口编号。
  • nexthop:当目的前缀所指不在本地链路上时,邻居路由器的IPv6地址。
  • siteprefixlength:若目的前缀所指在本地链路上,用户可以指定分配给此IPv6节点所属站点的地址前缀的长度,这是可选的。
  • metric:使用路由时设定优先值。值越小,路由越会获得优选。
  • publish:若设备充当IPv6路由器,则此选项能设置下述内容:该路由所对应的子网前缀是否包含在路由通告中,以及前缀的生存时间是否为无限(immortal选项)。
  • validlifetime:路由保持选用的生存时间。生存时间的值可以用日、小时、分钟和秒表示。默认值是infinite(无穷)。
  • preferredlifetime:路由被选用的生存时间。生存时间的值可以用日、小时、分钟和秒表示。默认值为infinite。
  • store:路由如何进行存储。可以是active(系统重启时地址会消失)或persistent(系统重启后地址仍保留)。后者为默认值。

例如,如果要在名为“Local Area Connection”的接口上添加一条默认路由,并将下一跳地址设置为fe80::2aa:ff:fe9a:21b8,要使用如下命令:

netsh interface ipv6 add route ::/0 "Local Area Connection" fe80::2aa:ff:fe9a:21b8

添加DNS服务器

配置DNS服务器的IPv6地址可以使用命令netsh interface ipv6 add dnsserver来实现,该命令语法如下。

netsh interface ipv6 add dnsserver [name=] Interface Name [[address=] IPv6Address] [[index=] Preference Value]
  • name:连接或适配器的名称。
  • address:DNS服务器的IPv6地址。
  • index:DNS服务器地址的优先权。

默认情况下,DNS服务器会被添加到DNS服务器列表的末尾。若指定了索引号,则DNS服务器会被放到列表中相应的位置,其他DNS服务器则相应后移。

例如,如果要在名为“Local Area Connection”的接口上添加一个IPv6地址为2001:db8:99:4acd::8的DNS服务器,要使用如下命令:

netsh interface ipv6 add dnsserver "Local Area Connection" 2001:db8:99:4acd::8

注释

本节只会描述如何使用Netsh命令来添加地址、默认网关和DNS服务器。除此之外,还有许多配置IPv6设置和IPv6组件的Netsh命令。如果读者需要全部的配置命令集,请参见Windows系统的“帮助”和“支持”。

相关文章
|
1月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
107 3
|
7天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
37 3
|
24天前
|
域名解析 存储 缓存
DNS是什么?内网电脑需要配置吗?
【10月更文挑战第22天】DNS是什么?内网电脑需要配置吗?
88 1
|
1月前
|
机器学习/深度学习 调度
mmseg配置解析 Polynomial Decay 多项式衰减
Polynomial Decay(多项式衰减)是一种常用的学习率调度方法,通过多项式函数逐步减少学习率,帮助模型更好地收敛。公式为:\[ lr = (lr_{initial} - \eta_{min}) \times \left(1 - \frac{current\_iter}{max\_iters}\right)^{power} + \eta_{min} \]。参数包括初始学习率、最小学习率、当前迭代次数、总迭代次数和衰减指数。适用于需要平滑降低学习率的场景,特别在训练后期微调模型参数。
58 0
mmseg配置解析 Polynomial Decay 多项式衰减
|
1月前
|
网络协议 Docker 容器
docker中的DNS配置
【10月更文挑战第5天】
289 1
|
1月前
|
弹性计算 网络协议 Ubuntu
如何在阿里云国际版Linux云服务器中自定义配置DNS
如何在阿里云国际版Linux云服务器中自定义配置DNS
|
1月前
|
JSON JavaScript 前端开发
深入解析ESLint配置:从入门到精通的全方位指南,精细调优你的代码质量保障工具
深入解析ESLint配置:从入门到精通的全方位指南,精细调优你的代码质量保障工具
85 0
|
1月前
|
编解码 计算机视觉
mmseg配置解析 align_corners=False
`align_corners=False` 是图像插值操作中的一个参数,影响输入和输出图像的角点对齐方式。`align_corners=True` 严格对齐角点,而 `align_corners=False` 均匀分布像素点,更适用于保持整体比例关系的任务,如语义分割。
32 0
|
1月前
|
机器学习/深度学习 编解码
mmseg配置解析 contract_dilation=True
`contract_dilation=True` 是 ResNetV1c 中的一种设置,用于解决多层膨胀卷积中的“栅格效应”。通过调整膨胀率,使卷积核在不同阶段更密集地覆盖输入特征图,避免信息丢失,提升特征提取质量,尤其在语义分割任务中效果显著。
41 0
|
1月前
|
XML Java 数据格式
手动开发-简单的Spring基于注解配置的程序--源码解析
手动开发-简单的Spring基于注解配置的程序--源码解析
46 0

推荐镜像

更多