Назад | Перейти на главную страницу

OpenVPN с IPv6 сбрасывает пакеты

Я использую OpenVPN (сборка из tarball) и имею подсеть / 112. Мой сервер настроен на использование tun. IPv4 работает правильно, но у IPv6 есть некоторые проблемы:

Моя идея такова: ICMP покидает сервер, но не возвращается, потому что адрес, назначенный клиенту vpn, не добавляется ни в один интерфейс - сервер игнорирует входящий пакет.

Как я могу изменить это поведение? tcpdump показывает исходящий пакет. Я могу пинговать сервер openvpn с клиента.

Правильная конфигурация должна иметь один префикс связи, назначенный физическому сетевому интерфейсу на сервере VPN, и иметь другой префикс, маршрутизируемый на сервер, с которого вы назначаете префикс связи для виртуального сетевого интерфейса, используемого программным обеспечением VPN. Если у вас нет особых причин поступить иначе, вам следует сделать каждый из префиксов ссылок / 64. Маршрутизация может быть / 64 или короче.

Из этих трех задействованных префиксов вы только упомянули, что один - это / 112, не упоминая, какой именно из них. Это заставляет меня думать, что вы, возможно, пытаетесь использовать один / 112 для разных целей, даже не осознавая, что собой представляет каждая из этих разных целей.

Существуют уловки, которые можно использовать для превращения части префикса ссылки в префикс маршрутизации, однако эти хаки расходуют емкость маршрутизатора и требуют лучшего понимания протоколов, с которыми вы имеете дело, поэтому я рекомендую использовать настоящий префикс маршрутизации.

Если для вас совершенно невозможно получить маршрутизируемый префикс ни от вашего текущего провайдера, ни путем переключения на другого провайдера, вы можете проксировать обнаружение соседей между физическим и виртуальным интерфейсами. ndppd обещает сделать это. Я не тестировал этот конкретный инструмент, но из предыдущих экспериментов знаю, что это возможно.