Есть два роутера на одном провайдере. На одном белый и статичный адрес. На другой серый и динамический. Выдается из двух диапазонов 100.64.0.0/16 или 100.65.0.0/16. Кто не в курсе -
100.64.0.0 — 100.127.255.255 (маска подсети 255.192.0.0 или /10). Данная подсеть рекомендована согласно RFC 6598 для использования в качестве адресов для CGN (Carrier-Grade NAT);
Когда адрес выпадает из диапазона 100.65.0.0/16, то на серый роутер не приходят ответы ping от белого роутера. Когда адрес выпадает из диапазона 100.64.0.0/16, то приходят ответы. Проверял tcpdump’ом, что до белого роутера доходит пинг при любом адресе, а вот ответ до серого приходит только если 64.
Между этими роутерами есть wireguard. Он работает только когда серый роутер на диапазоне 100.64.0.0/16, и тогда белый роутер видит внешний адрес серого, который определяется на ресурсах типа 2ip.ru. Если у серого роутера адрес 100.65.0.0/16, то белый его видит с этим адресом. Ресурсы типа 2ip.ru видят при этом другой адрес, конечно.
Как можно побороть такое поведение?