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

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



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

> Alexander GQ Gerasiov wrote:
> > Я бы поставил на 80й порт что-нить вроде nginx и, в зависимости от
> > условий, использовал бы разные бэкэнды.
> > Мне кажется, что это логичнее, но ты нигде не указал о каких
> > условиях идет речь, так что я могу ошибаться.
> >   
> Условия простые: -i eth1 -o ! eth1 (eth1 - внутренний интерфейс, также
> есть два внешних). Очевидно, что это условие имеет смысл только в
> FORWARD, тогда, когда мы выяснили что пакет действительно собрался
> уходить в интернет. Можно, конечно, переместить условия в прероутинг,
> переписав условие так, чтобы оно проверяло, что dstaddr - "внешний"
> адрес, а srcaddr - "внутренний". Но сейчас проверка сделана именно на
> основе интерфейсов (что, как мне кажется, надежнее в плане возможных
> модификаций роутинга, правил iptables, сетей, и.т.д).
У меня в похожей ситуации в таблице 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 - моя локалка



Reply to: