Всем привет.
Столкнулся с проблемой, которую сам пока не смог победить.
Схема такая: PC → VPS (Ubuntu, WireGuard) → Keenetic Hero (через SIM-модем) → интернет.
IPv4 работает идеально, трафик с мака уходит наружу именно через симку.
А вот с IPv6 засада.
Что делал:
на VPS включил форвардинг IPv6 (sysctl net.ipv6.conf.all.forwarding=1), пробовал и SNAT, и MASQUERADE через ip6tables;
крутил policy-routing, fwmark и таблицы маршрутов;
на Keenetic поднимал WG-интерфейс с адресом fd00:20::30/64, VPS с fd00:20::1/64, PC с fd00:20::2/128;
на PC адрес появляется, пинг по fd00 работает, но во внешний интернет IPv6 трафик не уходит;
curl -6 ifconfig.co на маке пустой, хотя сам роутер по IPv6 наружу выходит без проблем;
пробовал разные варианты AllowedIPs (::/0 у пира VPS, фиксированные префиксы и т.д.).
По итогу получается, что IPv6 на клиенте остаётся только локальный (fd00), а наружу он не пробрасывается. Нужно, чтобы именно PC получал реальный IPv6 от симки и чтобы отпечаток в сети (IP+WebRTC) совпадал, а не шёл через VPS-адрес.
Может, кто-то уже настраивал похожую схему и подскажет, как правильно прокинуть глобальный IPv6 с Keenetic через WireGuard на клиент?