LINUX.ORG.RU
ФорумAdmin

iptables ругается на отсутствующий модуль в ядре

 ,


0

1

Такая штука попалась. На некотором серваке с CentOS 7.3 не работает NAT. Ну то есть во так:

# iptables -t nat -L
iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
Так, не хватает какого-то модуля ядра. Смотрю, вроде файлы модулей наличествуют:
$ ls -l /lib/modules/2.6.32-042stab108.2/kernel/net/ipv4/netfilter
total 520
-rwxr--r--. 1 root root  7912 May 12  2015 arptable_filter.ko
-rwxr--r--. 1 root root 32232 May 12  2015 arp_tables.ko
-rwxr--r--. 1 root root  5688 May 12  2015 arpt_mangle.ko
-rwxr--r--. 1 root root 20816 May 12  2015 ip_queue.ko
-rwxr--r--. 1 root root  8992 May 12  2015 iptable_filter.ko
-rwxr--r--. 1 root root  9040 May 12  2015 iptable_mangle.ko
-rwxr--r--. 1 root root 16216 May 12  2015 iptable_nat.ko
-rwxr--r--. 1 root root  7280 May 12  2015 iptable_raw.ko
-rwxr--r--. 1 root root 37600 May 12  2015 ip_tables.ko
-rwxr--r--. 1 root root  6592 May 12  2015 ipt_addrtype.ko
-rwxr--r--. 1 root root  5136 May 12  2015 ipt_ah.ko
-rwxr--r--. 1 root root 20232 May 12  2015 ipt_CLUSTERIP.ko
-rwxr--r--. 1 root root  5728 May 12  2015 ipt_ecn.ko
-rwxr--r--. 1 root root  6760 May 12  2015 ipt_ECN.ko
-rwxr--r--. 1 root root 15984 May 12  2015 ipt_LOG.ko
-rwxr--r--. 1 root root  7304 May 12  2015 ipt_MASQUERADE.ko
-rwxr--r--. 1 root root  6944 May 12  2015 ipt_NETMAP.ko
-rwxr--r--. 1 root root  6992 May 12  2015 ipt_REDIRECT.ko
-rwxr--r--. 1 root root  8568 May 12  2015 ipt_REJECT.ko
-rwxr--r--. 1 root root 21320 May 12  2015 ipt_ULOG.ko
-rwxr--r--. 1 root root 26504 May 12  2015 nf_conntrack_ipv4.ko
-rwxr--r--. 1 root root  6216 May 12  2015 nf_defrag_ipv4.ko
-rwxr--r--. 1 root root  6000 May 12  2015 nf_nat_amanda.ko
-rwxr--r--. 1 root root 10640 May 12  2015 nf_nat_ftp.ko
-rwxr--r--. 1 root root 20680 May 12  2015 nf_nat_h323.ko
-rwxr--r--. 1 root root  7888 May 12  2015 nf_nat_irc.ko
-rwxr--r--. 1 root root 46040 May 12  2015 nf_nat.ko
-rwxr--r--. 1 root root 13528 May 12  2015 nf_nat_pptp.ko
-rwxr--r--. 1 root root  6096 May 12  2015 nf_nat_proto_dccp.ko
-rwxr--r--. 1 root root  9904 May 12  2015 nf_nat_proto_gre.ko
-rwxr--r--. 1 root root  6112 May 12  2015 nf_nat_proto_sctp.ko
-rwxr--r--. 1 root root  6056 May 12  2015 nf_nat_proto_udplite.ko
-rwxr--r--. 1 root root 14856 May 12  2015 nf_nat_sip.ko
-rwxr--r--. 1 root root 19048 May 12  2015 nf_nat_snmp_basic.ko
-rwxr--r--. 1 root root  5216 May 12  2015 nf_nat_tftp.ko
lsmod тоже говорит, что они есть:
$ lsmod | grep iptable
iptable_nat             6219  0 
nf_nat                 23730  4 ipt_REDIRECT,ipt_MASQUERADE,nf_nat_ftp,iptable_nat
iptable_mangle          3453  0 
nf_conntrack_ipv4       9938  3 iptable_nat,nf_nat
nf_conntrack           81301  8 xt_helper,xt_conntrack,nf_nat_ftp,nf_conntrack_ftp,iptable_nat,nf_nat,xt_state,nf_conntrack_ipv4
iptable_filter          2897  8 
ip_tables              18087  3 iptable_nat,iptable_mangle,iptable_filter
$ lsmod | grep nf_
nf_nat_ftp              3515  0 
nf_conntrack_ftp       12929  1 nf_nat_ftp
nf_nat                 23730  4 ipt_REDIRECT,ipt_MASQUERADE,nf_nat_ftp,iptable_nat
nf_conntrack_ipv4       9938  3 iptable_nat,nf_nat
nf_conntrack           81301  8 xt_helper,xt_conntrack,nf_nat_ftp,nf_conntrack_ftp,iptable_nat,nf_nat,xt_state,nf_conntrack_ipv4
nf_defrag_ipv4          1523  1 nf_conntrack_ipv4
$ lsmod | grep ipt_
ipt_REDIRECT            1880  0 
ipt_MASQUERADE          1984  0 
nf_nat                 23730  4 ipt_REDIRECT,ipt_MASQUERADE,nf_nat_ftp,iptable_nat
ipt_LOG                 6397  0 
ipt_REJECT              2391  1
На всякий случай решил модпробнуть их все:
# modprobe ip_tables
# modprobe iptable_filter
# modprobe iptable_nat
# modprobe iptable_filter
# modprobe iptable_raw
# modprobe nf_nat
# modprobe ipt_MASQUERADE
# modprobe ipt_NETMAP
И не помогло.
Можно ли включить NAT без перезагрузки сервера?

★★★★★

Если это вдска на ovz или хипстокере - с 90% вероятностью вредный или попорукий хостер просто собрал ядро без ната и без tun. А то ходют тут параноики мамкины со своими впнами на 200р вдсках, ресурсы впустую жрут.

svr4
()

Судя по версии ядра это OpenVZ. Проси хостера, чтоб разрешил твоему контейнеру пользоваться nat-модулем для Netfilter.

spijet ★★★
()
Ответ на: комментарий от spijet

Да, это действительно OpenVZ и у меня есть доступ к хосту, я все вышеприведённые команды использовал именно на хосте, а не в контейнере.

sunny1983 ★★★★★
() автор топика
Последнее исправление: sunny1983 (всего исправлений: 1)
Ответ на: комментарий от sunny1983

Могут не совпадать версии iptables и модулей (ядро 2.6.х — CentOS 6, а в контейнере — CentOS 7). Или ты ядро обновил и не перезагрузился (хотя, в центоси такой проблемы быть не должно).

spijet ★★★
()
Ответ на: комментарий от sunny1983

Это плохо, похоже iptables поддержка есть, а общая поддержка tables - отсутствует, потому у модуля iptables у вас зависимость 0.

lsmod | grep x_tables

x_tables 10848 6 xt_connlimit,xt_tcpudp,xt_state,iptable_nat,iptable_filter,ip_tables

vodz ★★★★★
()
Ответ на: комментарий от spijet

Могут не совпадать версии iptables и модулей (ядро 2.6.х — CentOS 6, а в контейнере — CentOS 7).

Я думал об этом. Если я попытаюсь собрать более старую версию iptables из исходников это может помочь? И какая версия нужна?

Это плохо, похоже iptables поддержка есть, а общая поддержка tables - отсутствует, потому у модуля iptables у вас зависимость 0.

Не очень верится мне в это предположение потому, что на моей домашней системе тоже стоит CentOS 7, модуля x_tables никакого нет, но все таблицы iptables работают. Правда у меня ядро - 3.10.

А вообще есть тут спецы по ядру, чтоб не гадать, а точно сказать какого модуля или настройки не хватает?

sunny1983 ★★★★★
() автор топика
Последнее исправление: sunny1983 (всего исправлений: 1)
Ответ на: комментарий от sunny1983
root@wifi-router:/# lsmod | grep iptable
iptable_mangle          2032  1 
iptable_nat             2425  1 
nf_nat_ipv4             6114  1 iptable_nat
iptable_filter          2220  1 
ip_tables              12512  3 iptable_mangle,iptable_filter,iptable_nat
x_tables               20921  12 xt_LOG,xt_multiport,ipt_REJECT,xt_nat,iptable_mangle,ip_tables,iptable_filter,xt_tcpudp,xt_limit,xt_DSCP,xt_conntrack,xt_TCPMSS


Оно как бы все на x_tables и цепляется. xt_nat это есть?
Правда как там оно было в 2.6 я уже и не помню...

hbars ★★★★★
()
Последнее исправление: hbars (всего исправлений: 2)
Ответ на: комментарий от sunny1983

Не очень верится мне в это предположение потому, что на моей домашней системе тоже стоит CentOS 7, модуля x_tables никакого нет, но все таблицы iptables работают. Правда у меня ядро - 3.10.

Я вам для 2.6 этот вывод и дал.

vodz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.