Linux-Bulgaria.ORG
навигация

 

начало

пощенски списък

архив на групата

семинари ...

документи

как да ...

 

 

Предишно писмо Следващо писмо Предишно по тема Следващо по тема По Дата По тема (thread)

lug-bg: Един ping, source routing и два SNAT-а.


  • Subject: lug-bg: Един ping, source routing и два SNAT-а.
  • From: Rossen Antonov <rossenantonov@xxxxxxx>
  • Date: Sun, 12 Jun 2005 15:48:13 +0300
  • Delivered-to: lug-bg-list@xxxxxxxxxxxxxxxxxx
  • Delivered-to: lug-bg@xxxxxxxxxxxxxxxxxx

Здравейте,
след много ровене из google, малко питане и безсмислени и безрезултатни проби стигнах до тук.



Имам следната ситуация:
eth0 - local net (192.168.0.x)
eth1 - ISP1
eth2 - ISP2

И на eth1 и на eth2 има пуснат SNAT:
>> Chain POSTROUTING (policy ACCEPT 223K packets, 19M bytes)
>> pkts bytes target prot opt in out source destination >> 188K 12M SNAT all -- any eth1 anywhere anywhere to:85.x.x.x >> 823 50110 SNAT all -- any eth3 anywhere anywhere to:10.0.0.51

На практика IPS2 не се използва изобщо. Всичко минава през IPS1. В определени моменти искам да прекарам един и точно един хост от локалната мрежа да ползва ISP2. За целта използвам policy routing:

ip rule add from 192.168.0.7 table viphost
ip route add default via 10.0.0.1 table vipohost
ip route flush cache

Всичко изглежда нормално, нали?

Но това се случва в реално време и всички работещи сесии от машината 192.168.0.7 започват да излизат от eth2. Особеното е, че те излизат през eth2 SNAT-нати ___със IP адреса на eth1___. Това първоначално ме шокира. В последствие си го обясних с факта, че ядрото естествено следи сесиите и не може просто така да ги промени. След като въпросните сесии умрат, всички нови дошли на тяхно място излизат правилно. Това се отнася като цяло за всички нови сесии.

Проблемът идва в това, че от 192.168.0.7 работи пинг към yahoo.com например, постоянно. След като пренасоча 192.168.0.7 през eth2 пингът продължава да излиза с адреса на eth1. Спирам го, пускам го, но той продължава да излиза грешно. Едва когато го спра за дълго време, например 10мин., всичко тръгва коректно. А когато пусна пинг към друг хост _след_ прехвърлянето проблеми нямам.


Има ли някакъв начин да рестартирам всичко, което ядрото помни за даден хост, защото освен проблемите с пинга може да има и други, които аз не съм хванал все още.



 

наши приятели

 

линукс за българи
http://linux-bg.org

FSA-BG
http://fsa-bg.org

OpenFest
http://openfest.org

FreeBSD BG
http://bg-freebsd.org

KDE-BG
http://kde.fsa-bg.org/

Gnome-BG
http://gnome.cult.bg/

проект OpenFMI
http://openfmi.net

NetField Forum
http://netField.ludost.net/forum/

 

 

Linux-Bulgaria.ORG

Mailing list messages are © Copyright their authors.