2013-07-18 2 views
-1

Хорошо, я работаю с маршрутизатором OpenWRT. У меня есть следующие iptable правил:iptable правило на OpenWRT для всех остальных портов

iptables -t nat -I prerouting_rule -m mac --mac-source $2 -p tcp --dport 80 -j DNAT --to-destination $3:80; 
iptables -t nat -I prerouting_rule -m mac --mac-source $2 -p tcp --dport 443 -j DNAT --to-destination $3:80; 

Эти правила эффективны перенаправлять трафик на порты 80 и 443 на конкретный адрес IP назначения для конкретного запрашивающего MAC-адреса. Я хотел бы добавить еще одно правило (или набор правил, если необходимо), которое снизит трафик на всех других портах для этого конкретного MAC без нарушения этих 2 правил.

Моя версия IPTables является: v1.4.10

Все указатели будут очень признательны!

EV

ответ

0
iptables -t nat -A prerouting_rule -m mac --mac-source $2 -j DROP 

вообще: использование -A вместо -I, добавить больше "человеческого"

редактировать:

вы должны отфильтровать pacakages в таблицах фильтров;)

iptables -A FORWARD -m mac --mac-source $2 --dport 80 -j ACCEPT 
iptables -A FORWARD -m mac --mac-source $2 --dport 443 -j ACCEPT 
iptables -A FORWARD -m mac --mac-source $2 -j DROP 

Я забыл, что не все столы могут ничего сделать ...

+0

Когда я попытался добавить это правило, я получил этот вывод: Таблица «nat» не предназначена для фильтрации, поэтому использование DROP запрещается. – exvance

+0

Неважно, в каком порядке созданы мои правила? – exvance

+0

Когда я пытаюсь ввести эти правила, я получаю это: iptables v1.4.10: неизвестная опция '--dport '. Доступна опция -dport только с таблицей prerouting_rule? – exvance

Смежные вопросы