Назад | Перейти на главную страницу

Iptables не работает в режиме моста

Я пытаюсь заблокировать DNS-запросы с помощью машины Ubuntu. Я создал мост, и пакеты пересылаются должным образом. Только когда я добавляю правила iptables, это не учитывается. Я пробовал без правил, просто установив политику каждой таблицы на DROP, и даже это не сработало: пакеты по-прежнему передаются без прерывания. Я должен уточнить, что я работаю в контексте ISP, поэтому с точки зрения сети мост расположен на стороне WAN, между CPE и telindus. Спасибо за помощь.

Версия iptables: 1.4.21

# iptables -L -n -v

0 packets in forward and input, 16 in output (Скорее синтетический, поскольку я на своем телефоне)

Все политики находятся в режиме DROP.

/proc/sys/net/bridge/bridge-nf-call-iptables = 1

Конфигурация моста довольно проста:

brctl addbr br0
brctl addif br0 eth0
brctl addif br0 eth1

ifconfig eth0 up
ifconfig eth1 up
ifconfig br0 up

Отвечаю на свой вопрос: проблема возникла по следующим параметрам:

/proc/sys/net/bridge/bridge-nf-filter-pppoe-tagged
/proc/sys/net/bridge/bridge-nf-filter-vlan-tagged

Я установил их в 1, и это позволило пересылать последующие кадры / пакеты в таблицу iptables FORWARD. Спасибо за помощь.

Было бы полезно поделиться с нами iptables -L -n -v

Чтобы сбросить трафик на мостовом интерфейсе, просто используйте:

iptables -A FORWARD -p tcp --dport 53 -j DROP
iptables -A FORWARD -p udp --dport 53 -j DROP

Не стесняйтесь использовать

tcpdump -i any -n port 53

чтобы узнать, действительно ли трафик проходит через сервер.

Вы также можете использовать:

iptables -A FORWARD -j LOG --log-prefix "IPTables: " --log-level 4

для регистрации трафика, проходящего через iptables.