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