AWS 要开始对一些服务的公网 IPv4 进行收费了, 比如 LightSail,
不过 IPv6 还是可以免费的, 之前一直偷懒, 没有换 IPv6,
今天决定把 IPv6 用起来.
启用 IPv6
ISP
首先看 网络业务提供商 ISP 是否支持, 这个可以看看 Modem IP 或 路由器 WAN 口 IP 有没有 IPv6 .
路由器
接着, 检查路由器是否支持 IPv6, 爸妈家里有个 2015 年买的路由器都是支持的.
这里要注意路由器的 无线
连接设置, 有些路由器启用无线+路由
功能时不能支持 IPv6,
需要改为交换机模式
下才能用上 IPv6, 这跟路由器的实现有关, 毕竟不是所有路由器都有 IPv6 NAT 的.
所以最好还是先用网口的有线连接
进行测试, 而且如果用了 VMWare 虚拟机实例 也可以避免一些奇怪的问题,
在有线连接的测试通过之后, 再进行 路由器和无线 的配置优化.
操作系统
如果是 Windows, 需要检查 控制面板/网络和Internet/网络连接
是否开启了 IPv6 协议和支持.
如果是 Linux, 最快的是 ip a
看看有无 IPv6, 否则根据对应发行版的 OS 文档进行开启.
Manjaro Desktop 和 Debian Server
因为我使用的是 Manjaro Linux, 那么主要说说我用到的相关 Desktop 设置,
VPS 服务器用的则是 Debian Linux.
DNS 服务商的域名解析配置
之前使用 IPv4 时, DNS 解析是用到 A 记录
, 是把 服务器域名 映射到 IPv4 地址.
IPv6 的话, 则是用 AAAA 记录
, 是把 域名 映射到 IPv6 地址.
然后进行试试 ping (如果 vps 没有禁止的话) :ping -6 your_vps_domain_name
客户端使用的 DNS 服务器
增加 IPv6 的 DNS, 比如 Google 的 2001:4860:4860::8888
.vim /etc/systemd/resolved.conf
resolvectl status
V2ray
Client 端:
因为 outbounds 连接服务端用的是域名, 前面我们已经把域名解析后的 IP 换成了 IPv6,
所以现在只需要修改 inbounds 即可, 比如 socks5 和 http 代理:
"inbounds": [ |
Server 端:
把 inbounds 里的 listen 地址改为 IPv6, 接收客户端的请求 :
"inbounds": [ |
Nginx
Nginx 主要是增加对 IPv6 端口的 listen,
此外 Nginx 内部转发时, 也需要改为 IPv6 地址.
vim /etc/nginx/sites-enabled/foo.conf
server { |