[Sysadmins] Два канала в интернет

Afanasov Dmitry =?iso-8859-1?q?ender_=CE=C1_atrus=2Eru?=
Чт Ноя 2 14:25:56 MSK 2006


On Wed, Nov 01, 2006 at 03:37:03PM +0400, Yuri V. Anikin wrote:
> 32758:  from 195.209.85.33 lookup MCN
> 32759:  from 85.112.43.86 lookup VGT
> 32760:  from 195.209.85.33 lookup MCN
> 32761:  from 85.112.43.86 lookup VGT
зачем столько копий? ядрышко остановится на первом совпадении, а дальше не
пойдет.

> default via 195.209.85.34 dev eth1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
откуда бы не пришёл пакет, ответ идет всегда через eth1. а следовательно,
если у нас SNAT, то ответ пойдет с другого ip, а значит обрыв соединения


> 5) Iptables настроен на NAT и forwarding 80 порта в DMZ-сеть 192.168.0.0
вот у меня именно этого оказалось мало, пришлось отдельно указывать
netfilter, что если пакет пришёл с другого интерфейса, отвечать по нему
же.

для входящий подключений это выглядело так:

iptables -t mangle -A INPUT -i eth1 -j CONNMARK --set-mark 0x200  
// используется именно CONNMARK, а не MARK, так как после проглатывания
// подключения ядром, весь sk_buf с MARK усрет, и для INPUT
// сгененирируется новый пакет, с пустым MARK.
// CONNMARK же ставиться на подкюлчение и хранится независимо

iptables -t mangle -A OUTPUT -m connmark --mark 0x200 -j MARK --set-mark
0x200
// а вот здесь уже проставляется именно netfilter mark на освное инфы из
// connection tracking
// цепочка именно OUTPUT, так как в POSTROUTING вычесление маршрута и
// исходящего eth уже будет произведено


ip rule add pref 10000 fwmark 0x200 table PASSIVEETH

ip route add table PASSIVEETH add default via <что там надо>


для сквозных пакетов работать надо с цепочкой FORWARD: на -i eth1 ставить
CONNMARK, на -i eth2 ставить условие -m connmark --mark

> 6) Ядро  2.4.20-alt12-up
должно и тут работать

> В /var/log/kernel/warnings сыпятся сообщения файрвола о "марсианских 
> источниках". Соображения?
а вот про это сообразить не могу.
сообщаения о марсионцах валятся, если обратный маршрут (проверка
включается/выключается через rc_filter) не совпадает с входящим
интерфейсом. в принципе логично: пришло по eth1, ответ идет по eth0.
типичный марсианин :)
-- 
 С уважением
 Афанасов Дмитрий
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: Digital signature
Url     : <http://lists.altlinux.org/pipermail/sysadmins/attachments/20061102/2a125bb6/attachment-0003.bin>


Подробная информация о списке рассылки Sysadmins