这是我的问题。我有一台服务器 A,它有两个 IP 地址。一个是公有 IPv4,另一个是 IPv6。
服务器B只有一个IPv6地址。
我想在服务器 B 上托管我的大部分服务(因为 B 上有更多的磁盘空间,我可以更好地控制它),但我需要服务器 A 的 IPv4。我想设置一个4in6隧道(RFC 2473),这样我就可以将流量从 A 中的 IPv4 地址传输到 B。
如果需要,我可以在服务器 A 上请求另一个 IPv4 地址,但我不想这样做。
我的问题是:使用哪个软件进行 4in6 隧道传输?我认为 OpenVPN 可以做到这一点,但是 Linux 上是否有 4in6 协议的实现?
稍微有点挑战性:IPv4 地址来自 venet 接口,无法桥接。我如何将服务器 A 上未使用的这个地址的所有权转移到服务器 B?
谢谢
答案1
4in6隧道似乎不需要特定的软件: http://tldp.org/HOWTO/html_single/Linux+IPv6-HOWTO/#chapter-configuring-ipv4-in-ipv6-tunnels
用于创建 4over6 隧道设备(但之后不会启动)
# /sbin/ip tunnel add <device> mode ip4ip6 remote <ipv6addressofforeigntunnel> local <ipv6addresslocal>
用法(一个隧道的通用示例):
# /sbin/ip -6 tunnel add ip6tnl1 mode ip4ip6 remote <ipv6addressofforeigntunnel1> local <ipv6addresslocal>
# /sbin/ip link set dev ip6tnl1 up
# /sbin/ip -6 route add <prefixtoroute1> dev ip6tnl1 metric 1
这还没有告诉我如何转发我的 vmnet 设备的 IPv4 地址,但至少现在看来在服务器 A 上创建 NAT 很容易。