Dementiev Vyacheslav O. -> debian-russian @ Tue, 22 Nov 2005 17:42:51 +0200:
>> DVO> Как пробросить порт на серую сетку? >> DVO> Собственно ситуация такова >> DVO> Есть роутер с маршрутом по умалчанию на gre1 (тунель на спутник). >> DVO> Есть впн соединение с "земляным" провайдером - пусть будет ppp0 с >> DVO> адрессом x.y.z.h >> DVO> При проброске порта (iptables -t nat -A PREROUTING -i ppp0 -p >> tcp--dport >> DVO> 123 -j DNAT --to 1.2.3.4) и настройки рп фильтра (ehco >> DVO> 0/proc/sys/net/ipv4/conf/ppp0/rp_filter) пакеты доходят до хоста >> DVO> 1.2.3.4. Но проблемма появляется с обратными пакетами. Попадая на >> роутер >> DVO> отхоста 1.2.3.4, они заварачиваются в тунель, что портит все картину >> DVO> (((( >> DVO> Как это победить красиво я не могу придумать уже в течении 2 >> DVO> дней.Попытка за "снатить" (iptables -t nat -A POSTROUTING -p tcp -d >> DVO> 1.2.3.4--dport 123 -j SNAT --to x.y.z.h ) в сочетании с настройкой >> DVO> правил типа"для пакетов на и от х.y.z.h роутить через ppp0" у меня не >> DVO> получилась((( >> >> DVO> Подкиньте идею >> >> Тонкость тут в том, что x.y.z.h появляется в игре уже после того, как >> принято решение о маршрутизации. Поэтому в правилах надо либо >> определяться по 1.2.3.4, либо по MARK (и, соответственно, маркировать на >> входе). DVO> В саму точку. Только вот маркировать ответ не по чем, через этот же DVO> роутер идут пакеты и в локальную сетку от того же порта .... И сеток DVO> несколько. В результате если маркировать по ип и перебрать все DVO> "внутренние" - "колбаса" получится большая (((. По той же самой причине DVO> не напишешь и руле для адреса 1.2.3.4. Я бы для простоты выдал нужной машине второй адрес, и гонял бы DNAT'ом на него. По нему и правила писать. Принимать решение по тому адресу, куда он посылает (вернее, по всем трем - его порту и обоим адресам), я так понимаю, тоже не получается? По идее с дополнительным SNAT можно, надо только маркировать пакет на обратном пути до того, как правило сработает. Сдается мне, что-то там из мангла до прероутинга все-таки дергается... О, а вот мне man iptables рассказывает про CONNMARK... Почитать бы еще где его толковое описание, но я сильно подозреваю, что оно вот ровно для этого - в момент (перед) DNAT маркируешь соединение, а для обратных пакетов матчишь. -- Artem Chuprina RFC2822: <ran{}ran.pp.ru> Jabber: [EMAIL PROTECTED] Реляционная база данных - это не единственный способ сделать дурацкий поиск. Victor Wagner -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]