[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Вопрос по роутингу/iptables



На Wed, 27 Jun 2007 17:18:09 +0700
Ivan Dubrov <wfragg@gmail.com> записано:

> Alexander GQ Gerasiov wrote:
> > У меня в похожей ситуации в таблице mangle размечается весь трафик
> > марками (локальный, в(из) городскую сеть, в(из) интернет) и дальше
> > во всех остальных таблицах эти марки используются.
> > Размечается примерно так:
> >
> > Chain PREROUTING (policy ACCEPT 54M packets, 43G bytes)
> >  pkts bytes target     prot opt in     out     source
> > destination 84 20357 MARK       all  --  br0    *
> > 0.0.0.0/0            <мой ip>   	       MARK set 0x3 13M
> > 18G MARK       all  --  br0    *       0.0.0.0/0
> > <городская сеть>   MARK set 0x1 8562K 1658M MARK       all  --
> > ppp0   *       <городская сеть>     0.0.0.0/0          MARK set 0x1
> > 43298 6279K MARK       all  --  br0    *       0.0.0.0/0
> > 172.16.0.0/24      MARK set 0x3
> >
> > (+ еще размечается аналогично трафик самого маршрутизатора в
> > цепочках INPUT/OUTPUT)
> >
> > в итоге марка 0x0 (то что по-умолчанию) это интернет траффик
> > марка 0x1 - городская сеть
> > марка 0x3 - моя локалка
> >
> >   
> 
> Это я и имел ввиду под переносом условий в PREROUTING. Но тогда другая
> проблема, если делать это в mangle, то это будет до nat, а
> соответственно все проброски внутрь сети (DNAT) еще не отработали. То
> есть условие "внутренности" адреса будет включать не только проверку
> на то, что адрес попадает в 192.168.20.0/24 (и прочие внутренние
> сети), но и проверку на то, что адрес назначения - не собственный
> "внешний" адрес (которых довольно много). 
у меня для этого первое правило в приведенном примере и служит. Но у
меня ip внешний один.
С другой стороны вменяемым образом написать скрипт, который при
поднятии интерфейса будет добавлять нужные правила в iptables не особо
сложно.

> В FORWARD все проще - там
> тупо по интерфейсам определяется. С другой стороны, если мой способ с
> iproute2 и будет работать, то задокументировать его понятным образом
> будет затруднительно :)
Скорее если оно и будет работать, то никто не гарантирует, что оно не
сломается при следующем обновлении системы.



Reply to: