Я пытаюсь использовать VM Linux в качестве интернет-шлюза IPv6 для другого VM. Мне установили сервер, для которого я получил ipv6 префикс 2001:abcd:1234:5678::/64 (Обратите внимание, что я отредактировал префиксы по причинам конфиденциальности),
устройство 1: Я поднял интерфейс eth0 (WAN) с адресом 2001:abcd:1234:5678:ffff:: 1/120 я поднял интерфейс eth1 (LAN) с IP fd12:3456:7890:: 1234
Я использовал следующие правила iptables:
-A FORWARD -o eth0 -i eth1 -s 2001:abcd:1234:5678:ffff::/120 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -o eth1 -i eth0 -d 2001:abcd:1234:5678:ffff::/120 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Опция установлена правильно через sysctl: сеть ipv6.conf.all.forwarding=1
Устройство может достигнуть прекрасного Интернета IPv6.
устройство 2: у Меня есть eth0 с IP 2001:abcd:1234:5678:ffff:: 2/128 и шлюз fd12:3456:7890:: 1234
Я могу достигнуть обоих fd12:3456:7890:: 1234 и 2001:abcd:1234:5678:ffff:: 1 прекрасное, но любые исходящие соединения с WAN зависает как показано в conntrack на устройстве 1:
tcp 6 118 SYN_SENT src=2001:abcd:1234:5678:ffff::2 dst=2a00:1450:400e:803::200e sport=43438 dport=80 [UNREPLIED] src=2a00:1450:400e:803::200e dst=2001:abcd:1234:5678:ffff::2 sport=80 dport=43438 mark=0 use=1
и устройство 2 IP 2001:abcd:1234:5678:ffff:: 2 не разрешимо Интернетом, который является, вероятно, причиной подвешивания.
Что я делал неправильно в моей установке? Как я заставляю второе устройство достигнуть Интернета через первое устройство?
Вам нужен отдельный/64 для каждой подсети.
Вы не можете только поместить адрес от интерфейса глобальной сети устройства 1 на устройстве 2, который находится на стороне локальной сети. Маршрутизатор стороны WAN не будет знать, как протянуться.
Вам будет нужен второй/64, и маршрутизатор должен быть настроен так, чтобы он знал, что вторая подсеть может быть достигнута при помощи устройства 1 как шлюз.
В зависимости от Вашей сети лучшим решением для этого могли бы быть DHCPv6-PD или статическая маршрутизация. Необходимо будет спросить сетевого администратора.