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

Re: port forwarding для на2 wan интерфейса



Dmitry A. Zhiglov -> Debian Russian MailList  @ Thu, 6 Dec 2012 11:33:40 +0400:

 >>  DAZ> Ок, настройте. На тестовом стенде ибо доступ дать не могу.
 >>
 >> А тестовый стенд дать можешь?  Минимум из 5 машин, соединенных не более
 >> чем попарно (целевая машина, на которую нужен форвардинг, роутер, два
 >> роутера его каналов, и одна машина по ту сторону этих роутеров).
 >>
 >> У меня такого зоопарка тупо нет, потестировать не на чем.  А
 >> потестировать надо, готовые правила протоптались пару переездов той
 >> конторы назад (перестало быть нужно).

 DAZ> Могу настрогать виртуалок, быстро не сделаю, может даже только
 DAZ> после 20-00 мск. Отношусь.

Правильно соединенных?  Ну давай попробуем.  Только "полноценных",
уровня vmware или virtualbox, а то про OpenVZ я точно знаю, что ее
строить так, чтобы iptables полноценно работали - это отдельная задача
на несколько перезапусков всей подсистемы, да и про Xen совершенно не
уверен.

Для тестирования нужно будет обеспечить по крайней мере на всех
промежуточных машинах tcpdump.

И тогда, увы, только послезавтра, потому что сегодня вечером я на сутки
уезжаю в Питер, и там мне будет не до настроек сетей.

А я пока постараюсь вспомнить, где я читал инструкцию по двухствольному
роутингу, и перечитать.

 >>
 >>  DAZ> Самое горячее и печалное что у меня времени нет. ((
 >>  DAZ> С форвардингом может и разобрался, но в роутингом затык. Задачи у
 DAZ> меня
 >>  DAZ> сейчас "кардинально с разных планет" - разрываюсь
 >>
 >>  DAZ> Вот что уже есть
 >>
 >>  DAZ> # iptables -t nat -nvL PREROUTING
 >>  DAZ> Chain PREROUTING (policy ACCEPT 11773 packets, 2159K bytes)
 >>  DAZ>  pkts bytes target     prot opt in     out     source
 >>  DAZ> destination
 >>  DAZ>     0     0 CONNMARK   tcp  --  *      *       0.0.0.0/0
 >>  DAZ> ISP_WAN2       tcp dpt:3389 CONNMARK set 0x2
 >>
 >>  DAZ> # iptables -t mangle -nvL PREROUTING
 >>  DAZ> Chain PREROUTING (policy ACCEPT 23364 packets, 4349K bytes)
 >>  DAZ>  pkts bytes target     prot opt in     out     source
 >>  DAZ> destination
 >>  DAZ>     0     0 CONNMARK   tcp  --  *      *       ISP_WAN2
 >>  DAZ> SOME_LOCAL_HOST       tcp spt:3389 CONNMARK restore
 >>
 >>  DAZ> # ip ru
 >>  DAZ> 0: from all lookup local
 >>  DAZ> 499: from all fwmark 0x2 lookup localnet
 >>  DAZ> 500: from all lookup localnet
 >>  DAZ> 1000: from ISP_WAN1 lookup wan1
 >>  DAZ> 2000: from ISP_WAN2 lookup wan2
 >>  DAZ> 32766: from all lookup main
 >>  DAZ> 32767: from all lookup default
 >>
 >>  DAZ> # ip ro ls table wan1
 >>  DAZ> default via ISP_IP1 dev eth1
 >>  DAZ> NET_WAN1 dev eth1  scope link
 >>
 >>  DAZ> # ip ro ls table wan2
 >>  DAZ> default via ISP_IP2 dev eth2
 >>  DAZ> ISP_NET2 dev eth2  scope link
 >>
 >>  DAZ> # ip ro ls table localnet
 >>  DAZ> LOCAL_NET dev eth0  scope link
 >>
 >>  DAZ> Может кто что подскажет?
 >>
 >>  DAZ> ВСЕМ: Если что, личка открыта для контактов
 >>
 >> Что-то не очень понятно, зачем CONNMARK.  Я не помню, чтоб я им
 >> пользовался, когда аналогичную фигню настраивал.  Просто DNAT с обоих
 >> внешних адресов в одно и то же место, кажется, работал.  Он же действует
 >> только на первый пакет сеанса, входящий, а дальше следит за соединением.
 >>
 >> С UDP, помнится, было хуже, но то было не с DNAT, а непосредственно с
 >> роутером.  source-based правило не срабатывало, потому что локально
 >> исходящий ответный пакет по UDP шел с дефолтным source (по TCP он идет с
 >> тем адресом, на который пришел клиент).  А с DNAT как раз может и с UDP
 >> сработать.

 DAZ> Ваша реализация может иной.  Надо держать в голове еще одну вещь -
 DAZ> там еще squid будет для localnet... вот такой комбайн.

 DAZ> CONNMARK. Идея в том, была или еще есть, что пакет маркируется и
 DAZ> по маркеру маршрутизирисуется.

Может, ты и прав, я сейчас не вспомню.  Что-то я с маркерами тоже
когда-то делал, но не помню уже, что.

В общем, давай тогда уже в личку полную постановку задачи, чтобы можно
было для стенда выделить существенную часть (возможно, если сквид
оказывается существенным, потребуется еще шестая машина - клиент того
сквида).  Но по идее со сквидом ничего существенного быть не должно.


Reply to: