Правила ip6tables полностью игнорируются внутри контейнера OpenVZ

9

Мы настроили сеть IPv6 на openvz с использованием мостовых устройств. Трафик IPv6 к виртуальным средам и обратно работает нормально.

ip6tables работает на HN, а iptables работает на VE. Внутри VE мы можем настроить правила ip6tables без каких-либо сообщений об ошибках. Однако они полностью игнорируются.

Какие дополнительные параметры конфигурации необходимы для работы ip6tables?

Карстен Тиль
источник
7
Возможно, стоит попробовать ip6tables -I INPUT -j LOGи посмотреть, действительно ли пакеты попадают в фильтры. Если это так, попробуйте добавить похожие строки в фильтры (особенно после любых ожидаемых падений) и посмотрите, что записывается в системный журнал.
Энди Смит
1
Убедитесь, что требуемые функции iptables находятся в файле vz.conf.
awmusic12635
1
Служба запущена? Нужно ли перезапускать, чтобы изменения вступили в силу?
Ксалори
Вы убедились, что используемый вами iface видит трафик в старых iptables IPv4? Непонятные уровни абстракции могут оставить в системе несколько «неправильных» сетевых карт, которые, похоже, ничего не делают. Прошли те времена, когда у вас просто был eth0 для интернета и eth1 для внутренней сети.
Зденек

Ответы:

0

Кажется, вы используете контейнеры в Proxmox, верно? Затем вы должны проверить через графический интерфейс Proxmox, что сетевые адреса в порядке и известны PVE.
В некоторых случаях pve не позволяет использовать некоторые модули iptables, например:
FATAL: Не удалось загрузить /lib/modules/4.15.18-1- pve / modules.dep: нет такого файла или каталога

Примечание. На Proxmox 5 контейнеры OpenVZ будут преобразованы в LXC , это может привести к некоторому смещению.

Fibo
источник
-1

Убедитесь, что вы применяете правила к интерфейсу venet0 явно.

Скотт Макинтайр
источник
Нет. OP прямо сказал, что он использует veth. Здесь нет venet0
Bruno9779
-2

Контейнеры OpenVZ наследуют ядро ​​и модули от хост-узла. Из-за этого вы не можете загружать новые модули ядра в контейнер OpenVZ / LXC. Я хотел бы убедиться, что на hostnode есть ip6_tablesмодуль ядра, либо скомпилированный в ядро, либо загруженный как модуль.

Это проблема, потому что OpenVZ является паравиртуализацией, что означает, что он разделяет одно и то же ядро ​​с узлом хоста. Поскольку вы используете то же ядро, что и другие контейнеры OpenVZ, вы не можете загружать модули в ядро. С аппаратными виртуальными машинами вы можете запускать собственное ядро ​​и затем загружать / выгружать модули ядра или компилировать собственное ядро ​​для использования. Приведенный ниже вопрос охватывает различия более подробно.

В чем разница между Full, Para и аппаратной виртуализацией?

К сожалению , когда у вас есть доступ к среде Guest OpenVZ , определяющей , если загружен модуль IPv6 IPtables может быть немного трудно , как только lsmod, /proc/modulesи /proc/config.gz часто не существует внутри OpenVZ.

Из-за этого вам, возможно, придется просто связаться с вашим провайдером, так как кто-то с корневым доступом на узле хоста должен будет загрузить этот модуль ядра для вас.

Гражданин Кеплер
источник
Это все верно, но совершенно не имеет значения: он является поставщиком, и соответствующие модули уже загружены.
Майкл Хэмптон