当我们使用EUserv或者hax等only ipv6的小鸡时,访问GitHub等网站时还是有一定的局限,一般解决方法是安装warp,另一种方法就是使用dns64来实现ipv4的访问。dns64使用方便,而且性能取决于双边网络。

nat64/dns64概念

NAT64是一种有状态的网络地址与协议转换技术,一般只支持通过IPv6网络侧用户发起连接访问IPv4侧网络资源。但NAT64也支持通过手工配置静态映射关系,实现IPv4网络主动发起连接访问IPv6网络。NAT64可实现TCP、UDP、ICMP协议下的IPv6与IPv4网络地址和协议转换。

DNS64则主要是配合NAT64工作,主要是将DNS查询信息中的A记录(IPv4地址)合成到AAAA记录(IPv6地址)中,返回合成的AAAA记录用户给IPv6侧用户。DNS64也解决了NAT-PT中的DNS-ALG存在的缺陷。

ipv6访问ipv4网络资源

上面的内容可以当作不知道,简单理解nat64将是新的网关,dns64会把ipv4地址转换为内网ipv6
部分网友购买纯IPV6的VPS后不知道如何玩,不知道如何安装环境。安装大部分基本环境都失败,资源存储在ipv4的网络地址上,而我们的ipv6 vps并不提供直接访问ipv4网络资源,这时我们就需要用到dns64服务来实现地址的转换。

这里自然给小伙伴们收及了部分公共dns64服务:

提供商 国家/城市 DNS64服务 NAT64前缀
Kasper Dupont 芬兰/赫尔辛基 2a01:4f9:c010:3f02::1 2a01:4f9:c010:3f02:64::/96
Trex 芬兰/坦佩雷 2001:67c:2b0::4 2001:67c:2b0:db32::/96
Trex 芬兰/坦佩雷 2001:67c:2b0::6 2001:67c:2b0:db32:0:1::/96
level66.network 德国/美因河畔法兰克福 2a09:11c0:f1:bbf0::70 2a09:11c0:f1:be00::/96
Kasper Dupont 德国/纽伦堡 2a01:4f8:c2c:123f::1 2a01:4f8:c2c:123f:64::/96
go6Labs 斯洛文尼亚 2001:67c:27e4:15::6411 2001:67c:27e4:642::/96
go6Labs 斯洛文尼亚 2001:67c:27e4::64 2001:67c:27e4:64::/96
go6Labs 斯洛文尼亚 2001:67c:27e4:15::64 2001:67c:27e4:1064::/96
go6Labs 斯洛文尼亚 2001:67c:27e4::60 2001:67c:27e4:11::/96
Kasper Dupont 荷兰/阿姆斯特丹 2a00:1098:2b::1 2a00:1098:2b::/96
Tuxis 荷兰/中部 2a03:7900:2:0:31:3:104:161 2a03:7900:6446::/96
Kasper Dupont 英国/伦敦 2a00:1098:2c::1 2a00:1098:2c::/96

使用方法

完成dns64服务的配置,就可以让纯ipv6的vps正常访问ipv4的网络资源了。操作非常简单,只需要修改一下vps的dns服务即可。

编辑vim /etc/resolv.conf,改成DNS64地址:

1
2
nameserver   2a09:11c0:f1:bbf0::70
nameserver 2a03:7900:2:0:31:3:104:161

然后刷新一下yum/apt缓存即可正常使用

centos用这个↓↓↓

1
2
yum clean all
yum makecache

Ubuntu或者Debian用这个↓↓↓

1
apt-get update

然后你会发现之前无法访问的ipv4网站都可以直接访问了

dns64/nat64缺点

1、网络速度取决于nat64网关的性能

2、网络延迟较大

总结

上面分享的是一些公共的dns64/nat64服务,性能将由双边网络决定。如果你有ipv4/ipv6双栈vps,可以尝试自己手动架设一个服务,这样极大程度优化网络性能。如果你想让ipv4网络用户可以访问到你的ipv6网站,可以使用cloudflare的cdn加速服务,支持ipv6转ipv4网络。