nowa trasa dla jednego adresu IP

Masz problemy z siecią bądź internetem? Zapytaj tu
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

nowa trasa dla jednego adresu IP

Post autor: sethiel »

Sieć 10.0.0.0/24 z domyślną bramą 10.0.0.1 i z domyślną trasą:

Kod: Zaznacz cały

 ip route
10.0.0.0/24 dev eth1.10  proto kernel  scope link  src 10.0.0.1
default via 83.0.0.1 dev eth0.5
Chciałbym dla adresu 10.0.0.100 mieć dalej domyślną bramę 10.0.0.1 ale domyślną trasę przez 83.0.0.2 dev eth0.2.
Jedyne co przyszło mi do głowy, ale zapewne działać nie będzie to:

Kod: Zaznacz cały

ip route add 0.0.0.0  dev eth0.2  src 10.0.0.100
Innymi słowy aby trasa dla 10.0.0.0/24 wyglądała:
10.0.0.5
10.0.0.1
83.0.0.1

A dla wybranego (wybranych IP)
10.0.0.100
10.0.0.1
83.0.0.2
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Domyślam się, że korzystasz z NAT. Musisz zatem skorzystać z iptables i ustawić regułę, która zamieni 10.0.0.100 na 83.0.0.2. Ta reguła musi być oczywiście przed tą dla reszty sieci. Chyba o to Ci chodziło.
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

Post autor: sethiel »

Tak i nie, NAT mam włączony dla obu interfejsów, zgodnie z wpisem w pliku /etc/shorewall/masq

Kod: Zaznacz cały

#INTERFACE              SOURCE          ADDRESS         PROTO   PORT(S) IPSEC   MARK
eth0.5                  10.0.0.0/24
eth0.2                  10.0.0.0/24
#LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE
Ale jako że mam ustawioną domyślnie trasę:

Kod: Zaznacz cały

default via 83.0.0.1 dev eth0.5
to dopiero kiedy ją zmienię "z ręki" na eth0.2 to mi zacznie działać na drugą podsieć, a chciałbym mieć to rozgraniczone już teraz przez wybrane IP.
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Trzeba zatem zrobić dodatkowe tablice w

Kod: Zaznacz cały

/etc/iproute2/rt_tables
i odpowiednio ustawić w nich reguły a następnie na podstawie źródła kierować pakiet(y) do danej tablicy

Kod: Zaznacz cały

ip rule add....
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

Post autor: sethiel »

Dziękuję.
Znalazłem poradnik praktyczny do rt_tables
http://kamilm.net/?go=net&i=2dsl
Starałem się już kiedyś zrobić takie tabelki dla dwóch różnych łącz ale nijak mi to nie wyszło.
Znasz może jakąś stronę ("dla opornych") aby było wyjaśnione jak działa rt_tables?
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

http://lukasz.bromirski.net/docs/transl ... tc-pl.html - rozdział 4
Jak na czymś utkniesz, pisz - pomożemy :)
Np.

Kod: Zaznacz cały

ip rule add from 10.0.0.100 table T1
T1 - tak nazwałem sobie tablicę w rt_tables
a w tabeli T1

Kod: Zaznacz cały

ip route add default via 83.0.0.2 dev eth0.2 table T1
(pisane z pamięci, za ewentualne niedociągnięcia przepraszam)
ODPOWIEDZ