На Wed, 27 Jun 2007 16:02:13 +0700 Ivan Dubrov <[EMAIL PROTECTED]> записано:
> 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 - моя локалка -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]