SNAT i routing

Andrzej Szombierski qq w kuku.eu.org
Sob, 19 Kwi 2003, 20:24:29 CEST


On Sat, 19 Apr 2003, Kacper Jurak wrote:

> Witam,
> 
> Mam na routerze trzy interfejsy, dwa łacza do internetu i LAN. Tablice
[...]

Męczyłem się kiedyś z podobną sytuacją i udało mi się znaleźć
"prawie-że-idealne" rozwiązanie. Konfiguracja była mniej więcej taka:
w domyślnej tablicy routingu stoi gateway od jednego providera, w innej 
(powiedzmy nr 2) stoi gateway od drugiego providera. Na firewallu w 
zależności od adresu docelowego pakiet jest markowany lub nie, a pakiety 
markowane wysyłane są według 2giej tablicy routingu. SNAT jest 
skonfigurowany tak:
(piszę z pamięci - mogą być błędy)
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 1.1.1.1
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 2.2.2.2
(eth0 - provider I, eth1 - provider II)

Dodatkowo ważne jest żeby na firewallu markować pakiety z adresem 
_źródłowym_ 2.2.2.2 tak, żeby wychodziły przez eth1.

Jedyną wadą takiego rozwiązania jest to, że połączenia generowane lokalnie 
idą zawsze przez providera I. Niestety nie udało mi się znaleźć 
rozwiązania tego problemu - narzuca się ustawienie poprostu odpowiednich 
wpisów w domyślnej tablicy routingu, ale jedyne co udawało mi się w ten 
sposób osiągnąć to pady jednego lub drugiego łącza :(

Tak mi teraz przyszło do głowy, że mogłoby zamiast tego całego 
kombinowania z markowaniem pakietów wystarczyć ustawienie odpowiednich 
gateway'ów w tablicy routingu dla odpowiednich klas adresów, i te 2 
regułki iptables, które wpisałem powyżej... ale nie mam już ochoty 
eksperymentować.

-- 
: Andrzej Szombierski : anszom w v-lo.krakow.pl : qq w kuku.eu.org :
: anszom w bezkitu.com ::: radio bez kitu <=> http://bezkitu.com :



Więcej informacji o liście dyskusyjnej pld-users-pl