Поднимаю rp-pppoe
gate netfilter # iptables -t nat -P PREROUTING ACCEPT
FATAL: Module ip_tables not found.
iptables v1.3.8: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
gate netfilter # cat /usr/src/linux/.config|grep MASQUERADE
gate netfilter # cat /usr/src/linux/.config|grep NAT
CONFIG_BRIDGE_EBT_T_NAT=m
CONFIG_BRIDGE_EBT_DNAT=m
CONFIG_BRIDGE_EBT_SNAT=m
# CONFIG_NATSEMI is not set
Что и куда вставить, чтобы появился нормальный нат?
Делал modprobe ebt_dnat
modprobe ebt_snat
modprobe ebtable_nat
не помогло.
Решено: NAT - нет такого пункта в ядре (поднимаю rp-pppoe)
Модератор: /dev/random
-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
-
Uncle_Theodore
- Сообщения: 3339
- ОС: Slackware 12.2, ArchLinux 64
Re: Решено: NAT - нет такого пункта в ядре
Покажи вывод
Код: Выделить всё
zcat /proc/config.gz | grep IP_NF-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
Re: Решено: NAT - нет такого пункта в ядре
Uncle_Theodore писал(а): ↑16.09.2007 05:20Покажи вывод
Код: Выделить всё
zcat /proc/config.gz | grep IP_NF
Код: Выделить всё
gate netfilter # zcat /proc/config.gz | grep IP_NF
# CONFIG_IP_NF_QUEUE is not set
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_IPRANGE=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
# CONFIG_IP_NF_ARP_MANGLE is not set-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
Re: Решено: NAT - нет такого пункта в ядре
Смотрю по вcем докам, должно быть
<*> Full NAT
<*> MASQUERADE target support
Тут такого просто нет.
gate linux # uname -a
Linux gate 2.6.22-gentoo-r5 #1 Sun Sep 16 01:14:36 Local time zone must be set--see zic manu i686 Celeron (Mendocino) GenuineIntel GNU/Linux
Может, что руками в кинфиг вписать...
<*> Full NAT
<*> MASQUERADE target support
Тут такого просто нет.
gate linux # uname -a
Linux gate 2.6.22-gentoo-r5 #1 Sun Sep 16 01:14:36 Local time zone must be set--see zic manu i686 Celeron (Mendocino) GenuineIntel GNU/Linux
Может, что руками в кинфиг вписать...
-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
Re: Решено: NAT - нет такого пункта в ядре
Все хуже, чем я думал.
Вписал из конфига .17
# CONFIG_IP_NF_NAT is not set
CONFIG_IP_NF_NAT=y
gate linux # make
scripts/kconfig/conf -s arch/i386/Kconfig
.config:481:warning: trying to assign nonexistent symbol IP_NF_NAT
Что ж получается.. в 2.6.20+ просто нету ната?
Вписал из конфига .17
# CONFIG_IP_NF_NAT is not set
CONFIG_IP_NF_NAT=y
gate linux # make
scripts/kconfig/conf -s arch/i386/Kconfig
.config:481:warning: trying to assign nonexistent symbol IP_NF_NAT
Что ж получается.. в 2.6.20+ просто нету ната?
-
DaemonTux
- Сообщения: 1480
- Статус: Юный падаван
- ОС: Gentoo
Re: Решено: NAT - нет такого пункта в ядре
есть в ядре нат. Просто он хитро включается. Чтобы в настройках появилась опция для fulnat нужно включить несколько пунктов в ядре сейчас точно не вспомню все конфиги на работе валяются.
Vladivostok Linux User Group
-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
Re: Решено: NAT - нет такого пункта в ядре
Сделал make allmodconfig
Появились нужные строки...
CONFIG_NF_NAT=m
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
Но! Вставил их в свой конфиг, облазил все меню. Нету этих строк нигде. Оно что, настолько редко используется, что убрано из меню? Или это бага?
Какой идиот так далеко заныкал такие нужные строки...
DaemonTux
Посмотри плиз, что надо активировать, чтобы вообще появлялась возможность ната.
Появились нужные строки...
CONFIG_NF_NAT=m
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
Но! Вставил их в свой конфиг, облазил все меню. Нету этих строк нигде. Оно что, настолько редко используется, что убрано из меню? Или это бага?
Какой идиот так далеко заныкал такие нужные строки...
DaemonTux
Посмотри плиз, что надо активировать, чтобы вообще появлялась возможность ната.
-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
Re: Решено: NAT - нет такого пункта в ядре
6 часов [old]тра[old] извращений с конфигами дали:
config IP_NF_TARGET_MASQUERADE
tristate "MASQUERADE target support"
depends on NF_NAT
config NF_NAT
tristate "Full NAT"
depends on IP_NF_IPTABLES && NF_CONNTRACK_IPV4
Что нужен NF_CONNTRACK_IPV4, не сказано НИГДЕ. Ну почему все через Ж...
Вариант 2, по которому я также пошел: активировать все подряд, авось вот та левая опция в десятой подменюшке сидит в зависимостях..
С пакетами хотя бы давно сделано так: ставим нужный, а система пакетов сама вычислит, от чего наш пакет зависит, и все доставит. А что мешает сделать тоже самое с ядром? Или хотя бы не тупое удаление "неугодных" строк из конфига, а ругань на КОНКРЕТНЫЕ зависимости. Чтобы хбы было понятно, куда копать.
Я конечно понимаю, что линух опопсел, и у меня штатно даже iptables не стояли.. Но какого хрена было так далеко в ядре прятать нат, я не понимаю.
config IP_NF_TARGET_MASQUERADE
tristate "MASQUERADE target support"
depends on NF_NAT
config NF_NAT
tristate "Full NAT"
depends on IP_NF_IPTABLES && NF_CONNTRACK_IPV4
Что нужен NF_CONNTRACK_IPV4, не сказано НИГДЕ. Ну почему все через Ж...
Вариант 2, по которому я также пошел: активировать все подряд, авось вот та левая опция в десятой подменюшке сидит в зависимостях..
С пакетами хотя бы давно сделано так: ставим нужный, а система пакетов сама вычислит, от чего наш пакет зависит, и все доставит. А что мешает сделать тоже самое с ядром? Или хотя бы не тупое удаление "неугодных" строк из конфига, а ругань на КОНКРЕТНЫЕ зависимости. Чтобы хбы было понятно, куда копать.
Я конечно понимаю, что линух опопсел, и у меня штатно даже iptables не стояли.. Но какого хрена было так далеко в ядре прятать нат, я не понимаю.
-
Uncle_Theodore
- Сообщения: 3339
- ОС: Slackware 12.2, ArchLinux 64
Re: Решено: NAT - нет такого пункта в ядре
Я спать уходил, сорри...
Вот, сравни с моим.
Вот, сравни с моим.
Код: Выделить всё
zcat /proc/config.gz | grep IP_NF
# CONFIG_IP_NF_CONNTRACK_SUPPORT is not set
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_IPRANGE=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_SAME=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m-
playnet
- Сообщения: 373
- Статус: изучающий
- ОС: CentOS, FreeBSD
Re: Решено: NAT - нет такого пункта в ядре
Uncle_Theodore писал(а): ↑16.09.2007 19:46Я спать уходил, сорри...
Вот, сравни с моим.
Код: Выделить всё
zcat /proc/config.gz | grep IP_NF ... CONFIG_IP_NF_ARP_MANGLE=m
Код: Выделить всё
gate ~ # zcat /proc/config.gz | grep NF_CONNTRACK
CONFIG_NF_CONNTRACK_ENABLED=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_SECMARK=y
CONFIG_NF_CONNTRACK_EVENTS=y
# CONFIG_NF_CONNTRACK_AMANDA is not set
CONFIG_NF_CONNTRACK_FTP=m
CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_PPTP=m
# CONFIG_NF_CONNTRACK_SANE is not set
CONFIG_NF_CONNTRACK_SIP=m
CONFIG_NF_CONNTRACK_TFTP=m
CONFIG_NF_CONNTRACK_IPV4=m
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
# CONFIG_NF_CONNTRACK_IPV6 is not setСобсно, ничего не работало из-за отсутствия этой строки:
CONFIG_NF_CONNTRACK_IPV4=m