Рейтинг:3

Проблема NFTABLE: IPv6 не ведет себя как IPv4 с зеркальной конфигурацией

флаг sm

У меня проблема с IPv6 на моем сервере. У меня настроен nginx для прослушивания порта 443 с IPv4 и IPv6. И это прекрасно работает: мой веб-сайт доступен из Интернета с включенным TLS.

Все усложняется, когда я активирую nftables: когда я захожу на свой сайт с IPv4, он работает, но когда я захожу на него с IPv6, время ожидания истекает :(

Вывод список правил sudo nft:

таблица инет фильтр {
        цепочка ВХОД {
                тип filter фильтр приоритета ввода хука; падение политики;
                мета nftrace набор 1
                состояние ct установлено, связанный комментарий принять "разрешить установленные соединения"
                iif "lo" принять комментарий "разрешить все с локального хоста"
                iif != "lo" ipdddr 127.0.0.0/8 counter пакетов 0 байт 0 drop comment "отбрасывать подключения к петле, не поступающие из петлевой проверки"
                iif != "lo" ip6 saddr ::1 counter пакетов 0 байт 0 drop comment "отбрасывать соединения с петлей, не исходящие из петлей"
                iifname "tunnel0" принять комментарий "разрешить все через VPN"
                udp dport 12345 принять комментарий «разрешить VPN на порту 12345»
                tcp dport { 22, 80, 443 } принять комментарий «разрешить HTTP, HTTPS и SSH на классических портах»
        }

        цепочка ВЫХОД {
                фильтр приоритета вывода обработчика типа фильтра; политика принять;
        }

        цепочка ВПЕРЕД {
                тип фильтра перехватывает приоритетный фильтр; падение политики;
        }
}

Вывод трассировка монитора sudo nft | группа 443:

trace id 76d7cb1a inet filter ВХОДНОЙ пакет: iif "eth0" ether saddr AA:AA:AA:AA:AA:AA ether saddr BB:BB:BB:BB:BB:BB ip6 saddr 2a01:cb09:804b:cd61:CCCC: CCCC:CCCC:CCCC ip6 saddr 2001:CCCC:CCCC:CCCC::CCCC ip6 dscp cs0 ip6 ecn not-ect ip6 hoplimit 45 ip6 flowlabel 0 ip6 nexthdr tcp ip6 length 40 tcp sport 53184 tcp dport 443 tcp flags == syn tcp window 22240

Примечание. У меня нет этой проблемы с ssh на порту 22. Я запускаю nftables v0.9.8 (EDS) на Дебиан 11.

Я почти целый день искал решение. Любая помощь приветствуется! Благодарить

Рейтинг:4
флаг cl
A.B

ICMPv6, который представляет собой протокол поверх IPv6, реализует разрешение канального уровня с использованием многоадресной и одноадресной рассылки. Удаление ICMPv6 означает, что разрешение больше недоступно: узлы не могут найти другие узлы в той же локальной сети. Это включает в себя вышестоящий маршрутизатор IPv6, который не может взаимодействовать с системой Linux с использованием IPv6, если ICMPv6 отброшен.

Напротив, IPv4 использует другой протокол: ARP (с использованием широковещательной и одноадресной передачи), который не является протоколом IPv4. Таким образом, можно отказаться от всего ICMP и не испытывать проблем с подключением к локальной сети, поскольку ARP не затрагивается (но все же может страдать от проблем с подключением к сети). черная дыра ПМТУ и другие подобные проблемы при сбросе всего ICMP, особенно при использовании туннелей).

Итак, начните с включения всего ICMPv6, затем во второй раз, как только вы убедитесь, что IPv6 снова работает, если вы не хотите включать все это, проверьте, что выборочно принимать в Протокол обнаружения соседей (для немаршрутизирующего узла я бы сказал как минимум типы 134, 135, 136 и 137):

nft add rule inet filter INPUT 'icmpv6 type {134, 135, 136, 137} accept'
Ricain avatar
флаг sm
Спасибо за awnser, видимо я недостаточно читал документацию по IPv6.Сам бы не нашел!
Рейтинг:0
флаг pk

Это помогло мне:

таблица инет фильтр {
    цепочка ВХОД {
        введите приоритет ввода хука фильтра 0; падение политики;

        мета l4proto ipv6-icmp принять
        ip6 ecn не принимает

        # Хотя я использовал несколько более строгие ограничения:
        # ip6 ecn not-ect ip6 hoplimit 1 accept
    }
}

Обратите внимание, что захваченный вами пакет является пакетом ECN, как и мой (за исключением того, что у моего ip6 hoplimit 1 от локального fe80::/10 saddr, а у вашего ip6 hoplimit 45).Кажется, этот пакет должен быть принят, чтобы мой интернет-провайдер (Spectrum Broadband) назначил блок IPv6, и, возможно, у вас возникают аналогичные трудности, связанные с этими пакетами ECN.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.