IPv6地址直接访问http,https服务及Windows共享文件夹[UNC路径] samba共享目录
2024-08-17 16:45:22    8    0    0
maker


1. 使用IPv6地址直接访问http,https服务:

IPv6 地址中的冒号 (:) 字符可能与资源标识符(例如 URI 和 URL)的既定语法冲突。 冒号通常用于在端口号之前终止主机路径。 为了缓解这种冲突,文字 IPv6 地址在此类资源标识符中用方括号括起来,例如:

http://[240e:386:910:d150:ac45:b73b:8a24:326b]/ 

当 URL 还包含端口号时,表示法是:

https://[2001:db8:85a3:8d3:1319:8a2e:370:7348]:443/

其中尾随的 443 是示例的端口号。

 

2. 纯IPv6地址如何访问Windows共享文件夹[UNC路径] samba共享目录:

在 Microsoft Windows 操作系统中,IPv4 地址是统一命名约定 (UNC) 路径名中的有效位置标识符。但是,冒号是 UNC 路径名中的非法字符。因此,在 UNC 名称中使用 IPv6 地址也是非法的。出于这个原因,Microsoft 实施了一种转录算法,以可以在 UNC 路径中使用的域名形式表示 IPv6 地址。为此,微软在互联网上注册并保留了二级域名ipv6-literal.net(尽管他们在2014年1月放弃了该域名[12])。 IPv6 地址在此名称空间中被转录为主机名或子域名,方式如下:

例子1:240e:386:910:d150:ac45:b73b:8a24:326b

240e:386:910:d150:ac45:b73b:8a24:326b

与\\127.0.0.1 不同,将冒号:替换为横杠-,添加后缀.ipv6-literal.net, 写成

\\240e-386-910-d150-ac45-b73b-8a24-326b.ipv6-literal.net

 

此表示法由 Microsoft 软件在本地自动解析,无需对 DNS 名称服务器进行任何查询。

如果 IPv6 地址包含区域索引,例如IPv6的内网网卡地址,则会将其附加到地址部分的 's' 字符之后:

fe80::57e8:1500:b059:ad24%14

将%替换为s,写成

fe80--57e8-1500-b059-ad24s14.ipv6-literal.net

注意:这个fe80的内网IPv6如果不添加%14(s14)的接口地址,直接\\fe80--57e8-1500-b059-ad24.ipv6-literal.net,不管你密码是否正确都会提示用户名密码错误。

 

在线转换工具:

如果对前面的规则感觉复杂,可以使用下面的在线转换工具。

https://ipv6-literal.com 

 

Wireguard中ipv6 endpoint的表示方法:

[Interface]
PrivateKey = W3ytbegK+wCyX344OpfwDjuzchxQ453623ksw3423z0ls+
Address = 192.16.0.2/32, 2606:4800:120:8f31:b912:1e94:1729:e128/128
DNS = 1.1.1.1
MTU = 1280

[Peer]
PublicKey = bmX4C+F1FxEMF944yiK2H6/134tzH0JuVo51h255gyo+
AllowedIPs = 0.0.0.0/1, 128.0.0.0/1, ::/1, 8000::/1
Endpoint = [2606:2302:30230:2201:1]:4500

这里如果IPv6地址不加方括号,则无法区分最后的:4500是IPv6地址的一部分,还是指端口号是4500。所以这里的方括号为必须。



Pre: 安卓手机当蓝牙鼠标模拟器 妙妙触控 - 多场景的蓝牙鼠标键盘

Next: Windows 10 打开防火墙的ping功能

8
Table of content