【饥荒DST】IPV6联机工具
2024年1月19日上午8:56
饥荒联机并不支持IPV6直连,所以IPV6的专用服务器会显示三个问号。
前提
- 服务器和客户端机子都有IPV6:可通过https://test-ipv6.com/ 检查
- 服务端的端口防火墙关闭
原理
利用github的开源项目 https://github.com/wangyu-/tinyPortMapper/releases 提到了这样一个功能:
# local port and remote port can be the same
./tinymapper_amd64 -l0.0.0.0:443 -r10.222.2.1:443 -u
# you can also use 6-to-4 or 4-to-6 forward
./tinymapper_amd64 -l0.0.0.0:1234 -r[2001:19f0:7001:1111:00:ff:11:22]:443 -t -u
./tinymapper_amd64 -l[::]:1234 -r44.55.66.77:443 -t -u
# you can also use ipv4-mapped ipv6 address
# this is especially useful if you want to play with ipv6 and you dont have a real ipv6 address
./tinymapper_amd64 -l[::]:4433 -r[::ffff:10.222.2.1]:443 -t -u
./tinymapper_amd64 -l[::ffff:0.0.0.0]:4433 -r[::ffff:10.222.2.1]:443 -t -u
客户端的IPV4包转发到IPV6端口传输,在服务器端再转发回IPV4端口。
操作
tinyportmapper -l 本地端:本地端口 -r 远端:远端端口 -[ut]
tinyportmapper -l 本地端:本地端口 -r 远端:远端端口 -[ut]
# 例如
# 服务端linux64
ip=`ip a | grep inet6 | grep global | grep -v fd00 | awk '{print $2}'| sed 's/\/64//'`
tinymapper_amd64 -l "[$ip]:10999" -r "127.0.0.1:10999" -u
tinymapper_amd64 -l "[$ip]:10998" -r "127.0.0.1:10998" -u
# 客户端windows64
tinyportmapper.exe -l 127.0.0.1:10998 -r [ipv6addr]:10998 -u
tinyportmapper.exe -l 127.0.0.1:10998 -r [ipv6addr]:10998 -u
然后
为了方便我亲爱的嫌麻烦的Windows用户老朋友能够顺利进入游戏,我用python简单写了个前端。只需要鼠标点一点就行了。
性能我是非常满意,两个端口映射进程也才12MB内存,联机延迟在5ms左右。
下载地址:
https://storage.binbla.com/Blog?hash=LWdo0zv1