LINUX.ORG.RU
ФорумAdmin

запретить транзитный трафик


0

1

Здравствуйте. Имеется роутер на asplinux 9.2. на нем два физических интрефейса, eth0 - интернет, eth1 локальная сеть. На eth1 много виланов. нужно запретить транзитный трафик с определенного mac-адреса в интернет и в локальную сеть. iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:XX -j DROP работает только в плане трафика между eth0 и eth1, то есть из локальной сети в интернет, внутри локальной сети между виланами не работает. tcpdump-ом входящие/исходящие пакеты этой машины прекрасно видны. если логировать эту машину по IP-адресу - iptables -I FORWARD -d XX.XX.XX.XX -j LOG --log-prefix «TEST » лог выглядит таким образом (почему то нет mac-адреса)- Jan 27 8:57:12 asp kernel: TEST IN=eth1 OUT=eth1.20 SRC=YY.YY.YY.YY DST=XX.XX.XX.XX LEN=84 TOS=0x00 PREC=0x00 TTL=126 ID=32901 PROTO=ICMP TYPE=0 CODE=0 ID=1135 SEQ=3191 по IP-адресу пакеты дропаются. в цепочке INPUT все работает. всякие ухищрения с mark ведут себя точно так же. PREROUTING ведет себя так же. ядро 2.4.22 iptables v1.4.10

заранее спасибо за ответ.


Ответ на: пост нечитаем от anonymous

Здравствуйте.

Имеется роутер на asplinux 9.2. на нем два физических интрефейса, eth0 - интернет, eth1 локальная сеть. На eth1 много виланов. нужно запретить транзитный трафик с определенного mac-адреса в интернет и в локальную сеть.

iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:XX -j DROP

работает только в плане трафика между eth0 и eth1, то есть из локальной сети в интернет, внутри локальной сети между виланами не работает.

tcpdump-ом входящие/исходящие пакеты этой машины прекрасно видны. если логировать эту машину по IP-адресу -

iptables -I FORWARD -d XX.XX.XX.XX -j LOG --log-prefix «TEST »

лог выглядит таким образом (почему то нет mac-адреса)-

Jan 27 8:57:12 asp kernel: TEST IN=eth1 OUT=eth1.20 SRC=YY.YY.YY.YY DST=XX.XX.XX.XX LEN=84 TOS=0x00 PREC=0x00 TTL=126 ID=32901 PROTO=ICMP TYPE=0 CODE=0 ID=1135 SEQ=3191

по IP-адресу пакеты дропаются. в цепочке INPUT все работает. всякие ухищрения с mark тоже не работают с mac-адресом. PREROUTING ведет себя так же.

ядро 2.4.22 iptables v1.4.10

заранее спасибо за ответ.

lesta
() автор топика
Ответ на: комментарий от lesta

Возможно, это проблема старого ядра + окружения. Можете попробовать на чём-нибудь по-свежее?

anonymous
()
Ответ на: комментарий от berrywizard

сорри, наверное не внятно написал. eth0 и eth1 это просто описание роутера, а условие -

нужно запретить транзитный трафик с определенного mac-адреса в интернет и в локальную сеть(то есть между всеми виланами на eth1)

lesta
() автор топика
Ответ на: комментарий от anton_jugatsu

в eth1.20

ip l

1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc cbq qlen 1000 link/ether 00:02:b3:af:fc:9c brd ff:ff:ff:ff:ff:ff

3: eth1: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc cbq qlen 1000 link/ether 00:02:b3:af:fc:4b brd ff:ff:ff:ff:ff:ff

4: eth1.2: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc noqueue link/ether 00:02:b3:af:fc:4b brd ff:ff:ff:ff:ff:ff

5: eth1.10: <BROADCAST,MULTICAST,PROMISC> mtu 1500 qdisc noop link/ether 00:02:b3:af:fc:4b brd ff:ff:ff:ff:ff:ff

6: eth1.20: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc noqueue link/ether 00:02:b3:af:fc:4b brd ff:ff:ff:ff:ff:ff

iptables -I FORWARD -i eth1 -o eth1.20 -m mac --mac-source XX:XX:XX:XX:XX:XX -j DROP

результат тот же, пакеты не дропаются. по ip-адресу дропаются.

lesta
() автор топика
Ответ на: комментарий от lesta

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

Komintern ★★★★★
()

Для маков есть ebtables
А так, надо отказаться от использования VLAN1 :) и тада все будет пучком :)

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

ebtables по некоторым соображениям не подходит. а при отказе от vlan1 все тоже самое.

ps. это уже на ядре 2.6.26-2-686, iptables v1.4.2

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