IPv6 有没有类似于 IPv4 的端口映射的能力?

lifanxi · 2024-10-6 09:40:28 · 145 次点击
以前我家里内网有一台应用服务器对外提供服务,我的 OpenWrt 路由器上的配置就是 IPv4 做了一个端口映射到这台服务器上,IPv6 直接把 DDNS 指向这台服务器,并在路由器上开放相应的端口。完美。

最近对这台应用服务器做了拆分,拆成了多台 VM 在不同的 IP/端口上提供不同的服务。这时 IPv4 很容易解决,把相应的端口映射改到各台 VM 上就行。但 IPv6 不知道该怎么处理了,没有办法在路由上配置出类似 IPv4 的转发策略?
举报· 145 次点击
登录 注册 站外分享
14 条回复  
maybeonly 小成 2024-10-7 10:28:34
对于 tcp 和 udp ,ip6tables 可以实现和 iptables 一样的 nat 。
对于 http 类服务,根据需求,还可以选择 http 代理的模式做反向代理。
以及,建议还是用不同的域名区分不同的服务,毕竟就算是 ipv4 ,也可以用 host 区分( http 服务),就算不同的域名也可以加端口。
fanersai 小成 2024-10-7 08:24:59
安装 socat
flynaj 小成 2024-10-7 02:10:14
openwrt 里面的 socat 可以满足你,可以 v4 ,v6 互相转换,也可以转发。
liyue961 初学 2024-10-6 21:14:58
@lifanxi 使用反向代理不就好了。只要内网 v4 固定,设置端口就可以了
dislike 初学 2024-10-6 19:52:21
用 socat 吧,主路由 ipv6 做 DDNS,然后把各个端口分别用 socat 映射到内网各 VM 的 ipv4 地址就可以了,这样内网的 V4 地址固定,更容易管理.
bobryjosin 初学 2024-10-6 19:31:40
你的需求不就是 ipv6 nat ? nat 后就和 ipv4 一样可以端口映射了,内网每台机器和路由上都配一个静态的内网 ipv6 地址,有公网地址的路由上做一个 DNAT 不就行了,这样就不需要管前缀了。
SenLief 小成 2024-10-6 15:14:39
这个内网装个反代就可以了 nginx caddy 什么的都行,或者直接用 socat 链接两个端口。
A1188 小成 2024-10-6 12:43:00
试试 Socat ?
lentrody 初学 2024-10-6 11:40:37
IPv6 时代的正确习惯就是给每台设备分配子域名。
在一台设备上跑 DDNS 脚本就同时更新所有同网关下设备的 IPv6 地址,只要设备的 IPv6 地址是固定后缀就行。
可以这样本地拼接再提交 https://github.com/ddnspod/dnspod-ipv6-ddns/blob/master/dnspod-ipv6-ddns.sh
也可以提交后让服务商自己拼接 https://dynv6.com/docs/apis
feng0vx 小成 2024-10-6 11:05:03
*/10  *  *  *  *    logger  -t 'ddns' `wget -q -O -  "https://ipv4.dynv6.com/api/update?hostname=z.dynv6.net&ipv4=auto&token=z"`
*/10  *  *  *  *    logger  -t 'ddns' `wget -q -O -  "https://ipv6.dynv6.com/api/update?hostname=z.dynv6.net&ipv6=auto&token=z"`
12下一页
返回顶部