On 6 Dec 2012 11:12, "Artem Chuprina" <[email protected]> wrote: > > Dmitry A. Zhiglov -> [email protected] @ Thu, 6 Dec 2012 10:13:28 +0400: > > DAZ> Ок, настройте. На тестовом стенде ибо доступ дать не могу. > > А тестовый стенд дать можешь? Минимум из 5 машин, соединенных не более > чем попарно (целевая машина, на которую нужен форвардинг, роутер, два > роутера его каналов, и одна машина по ту сторону этих роутеров). > > У меня такого зоопарка тупо нет, потестировать не на чем. А > потестировать надо, готовые правила протоптались пару переездов той > конторы назад (перестало быть нужно).
Могу настрогать виртуалок, быстро не сделаю, может даже только после 20-00 мск. Отношусь. > > 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 > сработать. Ваша реализация может иной. Надо держать в голове еще одну вещь - там еще squid будет для localnet... вот такой комбайн. CONNMARK. Идея в том, была или еще есть, что пакет маркируется и по маркеру маршрутизирисуется. (Пишу с телефона, сорри если что не так и за overquoting)

