Друзья, что-то за длинное и жаркое лето отупел в край и никак не могу сообразить, почему между двумя интерфейсами не ходят пакеты Ipv6.
Система Ubuntu 22.04
Есть основной интерфейс, с /64 префиксом от провайдера. Хочу на нем один адрес взять для сервера, остальное отдаю в туннель Wireguard.
Основной интерфейс:
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::5054:ff:fe0e:f46a prefixlen 64 scopeid 0x20<link>
inet6 2a10:9200:1:: prefixlen 64 scopeid 0x0<global>
WG:
wg0: flags=209<UP,POINTOPOINT,RUNNING,NOARP> mtu 1420
inet6 2a10:9200:1:: prefixlen 64 scopeid 0x0<global>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1000 (UNSPEC)
Если делаю ping -6 ya.ru, то все пингуется. Если ping -6 -I wg0 ya.ru, то адрес недоступен. С удаленного конца WG туннеля, ситуация аналогичная. Уходит по туннелю до интерфейса wg0 и на нем все умирает, дальше никуда не идет.
Sysctl по поводу форвардинга дает вот такое вот:
net.ipv6.conf.all.forwarding = 1
net.ipv6.conf.all.mc_forwarding = 0
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.default.mc_forwarding = 0
net.ipv6.conf.ens3.forwarding = 1
net.ipv6.conf.ens3.mc_forwarding = 0
net.ipv6.conf.lo.forwarding = 1
net.ipv6.conf.lo.mc_forwarding = 0
net.ipv6.conf.wg0.forwarding = 1
net.ipv6.conf.wg0.mc_forwarding = 0
Маршрутизация такая:
ip -6 route
2a10:9200:1::/64 dev wg0 proto kernel metric 200 pref medium
2a10:9200:1::/64 dev ens3 proto kernel metric 256 pref medium
2a10:9200:1::/64 dev wg0 proto kernel metric 256 pref medium
fe80::/64 dev ens3 proto kernel metric 256 pref medium
default via fe80::1 dev ens3 proto static metric 1024 onlink pref medium
IPTables - ничего криминального:
ip6tables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Где я не прав?