iT邦幫忙

0

Windows上的IPv6

  • 分享至 

  • xImage
  •  

Windows和EUI-64

EIU-64

通常情况下,链路本地地址的接口ID是由MAC地址来生成的,标准叫做EUI-64。(RFC 2373)
生成的64bit接口ID,叫做接口标识符。
SLAAC(无状态分配)所产生的地址,其接口ID也会使用接口标识符。与链路本地地址的接口ID一样。
而这只是在Windows Vista和Windows 2008之前的情况下。
为了安全,Windows开始使用了随机化接口ID和临时地址。(RFC 3041)

随机标识符/接口ID

由于EUI-64生成的接口标识符,是由MAC地址生成。所以很容易根据IPv6地址来推断出设备的MAC地址。
EUI-64 是将48bit的MAC地址,其第七位取反,然后中间填充FFFE组成64bit的接口ID。
所以Windows会随机生成 64bit的接口标识符。看下面的输出,链路本地地址明显是和MAC地址无关的。
此地址是固定,一般生成之后,不会改变。


 C:\Users\admin> ipconfig /all 
   描述. . . . . . . . . . . . . . . : Intel(R) Wi-Fi 6 AX200 160MHz
   物理地址. . . . . . . . . . . . . : 46-68-5C-AA-41-11
   DHCP 已启用 . . . . . . . . . . . : 是
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::1e2:5910:14f3:a9d5%13(首选)
   

临时地址

由于SLAAC产生的地址的接口ID,是接口标识符的,所以后64bit是基本不变的,这样很容易被跟踪。
所以需要临时地址。
临时地址也是一样随机生成64bit接口ID,用于主机作为源IP主动访问网站和应用。但为了安全,会经常变化。
如在接口重新连接的时候,或者临时IPv6生存期到期的时候。会重新随机生成另一个临时IPv6地址。
在某种情况下,你会看到多个临时IPv6地址。这是因为旧的临时地址过期的时候,旧地址还有建立的连接。

查看IPv6协议配置

使用 Powershell命令 get-netipv6protocol


DefaultHopLimit               : 128
NeighborCacheLimit(Entries)   : 256
RouteCacheLimit(Entries)      : 4096
ReassemblyLimit(Bytes)        : 262676960
IcmpRedirects                 : Enabled
SourceRoutingBehavior         : DontForward
DhcpMediaSense                : Enabled
MediaSenseEventLog            : Disabled
MldLevel                      : All
MldVersion                    : Version2
MulticastForwarding           : Disabled
GroupForwardedFragments       : Disabled
RandomizeIdentifiers          : Enabled  //随机接口ID开启
AddressMaskReply              : Disabled
UseTemporaryAddresses         : Enabled  //临时IPv6地址开启
MaxTemporaryDadAttempts       : 3        //临时IPv6的重复地址检测尝试次数
MaxTemporaryValidLifetime     : 7.00:00:00 //临时地址最大有效时间。
MaxTemporaryPreferredLifetime : 7.00:00:00
TemporaryRegenerateTime       : 00:00:05
MaxTemporaryDesyncTime        : 00:10:00
DeadGatewayDetection          : Enabled

SLAAC的DNS服务器地址分配--RDNSS

源于一个较新的IPv6标准(RFC 8106)。从Windows 10 1703开始,Windows支持使用无状态获取DNS服务器了。
不过,DHCPv6 获取的DNS服务器优于通过RA报文获取的DNS服务器。
Android 从4.2开始支持,iOS 从4.1开始支持,MacOS从 10.7开始支持。

PS:Android至今都不支持DHCPv6,可能是为了安全考虑。

来源: https://en.wikipedia.org/wiki/Comparison_of_IPv6_support_in_operating_systems

参考

https://datatracker.ietf.org/doc/html/rfc8106
https://www.networkacademy.io/ccna/ipv6/ipv6-on-windows
https://docs.microsoft.com/en-us/powershell/module/nettcpip/get-netipv6protocol?view=windowsserver2022-ps

PS:随机标识符和临时地址,其他系统也会使用,如MacOS从10.7也开始使用了,Android iOS Linux等系统较新版本可能会支持。

个人博客

https://songxwn.com/


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言