Я пытаюсь настроить простую переадресацию портов в контейнере OpenVZ, на котором работает CentOS 5.5. Когда я запускаю команду, я получаю ошибки.
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables v1.3.5: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
Эта же команда отлично работает на аппаратном узле или любом другом физическом сервере. Я знаю, что могу настроить переадресацию портов для этого конкретного контейнера на аппаратном узле, но это не решение.
Похоже, на вашем хост-узле OpenVZ не включена поддержка netfilter для гостевых виртуальных машин. Если вы являетесь администратором хоста OpenVZ, то я отсылаю вас к разделу, озаглавленному «Настройка брандмауэра, позволяющего настраивать индивидуальный контейнер». на этой странице вики OpenVZ.
modprobe ip_tables
modprobe ip_conntrack
modprobe iptable_filter
modprobe ipt_state
Попробуйте что-нибудь из этого ..
я бы предположил iptable_filter ..
И снова запустите команду ..
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
Это сработало?