1

Я пытаюсь переадресовать / замаскировать соединения от WLAN0 до ETH0 следующим образом:

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

Первая команда работает.

Вторая команда отвечает: iptables: No chain/target/match by that name.

Если я удалю -m state --state RELATED,ESTABLISHED часть команды будет принята.

Я посмотрел на модули ядра, используя lsmod | grep ip и 'ip_tables' присутствуют. Я здесь упускаю что-то очевидное. Предложения?

Debian 7 (armv7l)

1 ответ1

0

Модуль Netfilter state реализован с использованием модуля ядра с именем xt_state , поэтому, если попытка использовать его сразу же не удалась, можно попробовать выполнить

# modprobe xt_state

Если это не удается, ядро, скорее всего, скомпилировано с отключенной поддержкой расширенных функций Netfilter.

Чтобы проверить это, можно найти в файле /boot/config-<your-kernel-version> слово CONFIG_NETFILTER_XT_MATCH_STATE которое должно быть

  1. не закомментировано,
  2. присвоено значение, которое является либо "у" или "м" ("да" против "модуля"),
  3. не присвоено значение "n" ("нет").

Дальнейшие исследования с OP показали, что у них есть ядро, поставляемое с установленного odroid , а не стандартное ядро Debian Wheezy для архитектуры armhf .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .