Strona 1 z 2

[+] Jak usprawnić routing? Gdzie jest błąd?

: 24 lutego 2009, 22:56
autor: piroaa
Mam sieć taką jak na schemacie poniżej:

Obrazek

Chciałbym aby wszystkie hosty mogły się ze sobą komunikować w tym celu dodaje takie trasy na poszczególnych hostach:
S1:

Kod: Zaznacz cały

ip route add 192.168.2.0/24 dev eth2
S2:

Kod: Zaznacz cały

ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
S3:

Kod: Zaznacz cały

ip route add 192.168.1.0/24 dev eth1
S4:

Kod: Zaznacz cały

ip route add 192.168.1.0/24 via 192.168.2.1 dev eth0
I to działa połowicznie mogę pingować z S1 adres 192.168.2.1 i z S3 192.168.1.1 ale już z S2 nie mogę pingować zarówno S3 jak i S4.
Oczywiście przekazywanie pakietów

Kod: Zaznacz cały

echo "1" >  /proc/sys/net/ipv4/ip_forward 
włączone.
Co jeszcze trzeba dodać aby to ruszyło.

: 25 lutego 2009, 08:32
autor: grzesiek
Po pierwsze, na rysunku masz, że S1 ma eth0, eth1, a kod podajesz:

Kod: Zaznacz cały

ip route add 192.168.2.0/24 dev eth2
Dalej nie sprawdzając, czytam o problemie, że z S2 nie pinguje S2 i S3, a w S2 masz maskę /24.

To tak z grubsza, jak nic nie pomoże to będziemy dalej kombinować.

: 25 lutego 2009, 13:19
autor: Raffaello22
Rozumiem że to tylko teoretyczne rozważania bo praktycznie to zbytnio sensu nie ma. Routery podłączone do jednego przełącznika, technologia wielodostępowa raczej z założenia powinny być w tej samej sieci (podsieci) no chyba że masz jakieś Vlany tutaj ale nie widzę rutera, który by je rutował. Takie wpisy nie podając następnego skoku:

Kod: Zaznacz cały

ip route add 192.168.2.0/24 dev eth2
daje się tylko na łączach punkt-punkt.

: 25 lutego 2009, 21:23
autor: piroaa
Na obrazku znalazł się błąd, oczywiście powinno to wyglądać tak:

Obrazek

Rozwiązanie takie zostało stworzone do symulacji sieci, ze względów oszczędnościowych tylko jeden przełącznik, podsieć 192.168.1.0/24 może się ze sobą komunikować podobnie jak podsieć 192.168.2.0/24 więc myślę że wszystko jest w porządku, komunikacja pomiędzy podsieciami w zamyśle ma być możliwa tylko przez routery.
Raffaello22 pisze:Routery podłączone do jednego przełącznika
Tak, ale tylko interfejsem, który nazwać można LAN z adresem odpowiednio 192.168.1.1 oraz 192.168.2.1 Natomiast interfejsy, które można nazwać WAN z adresami 10.0.0.1 oraz 10.0.0.2 połączone są kablem krosowym.
Wydaje mi się że powinno to działać bez zarzutu choć jak widać to nie bardzo chce.
Raffaello22 pisze:Takie wpisy nie podając następnego skoku:

Kod: Zaznacz cały

ip route add 192.168.2.0/24 dev eth2
daje się tylko na łączach punkt-punkt.
Więc jak podać następny skok?

: 25 lutego 2009, 21:37
autor: grzesiek
Wiesz co, teraz to już mniej rozumiem. Dalej S1 nie ma eth2. Ale dobra zostawmy to, ograniczając się do obrazka napisz konkretnie jakie komputery, za pomocą jakiego interfejsu mają się ze sobą łączyć?

: 25 lutego 2009, 21:47
autor: piroaa
Dobrze więc tak:
  • S1 i S2 łączą się ponieważ są w tej samej podsieci, podobnie jak
    S3 i S4.
  • Mogę też pingować S1 z S3 używając adresów 10.0.0.0/8 oraz po dodaniu wpisów, o których mowa powyżej używając adresów 192.168.2.1 oraz 192.168.1.1
Chciałbym natomiast osiągnąć sytuację gdzie możliwa jest komunikacja każdej wybranej maszyny z każdą.

Edycja:
A da się w ogóle tak zrobić czy za bardzo przekombinowałem, bo jakaś taka cisza nastała.

: 26 lutego 2009, 10:08
autor: grzesiek
Ogólnie to komputery połączone przez przełącznik z dwóch różnych sieci nie powinny się widzieć - zależy to od ustawień klientów a nie przełącznika. Można elegancko połączyć się z inną siecią za pomocą serwera łączącego. Twoja struktura jest dosyć nietypowa i nieprzystosowana nawet do tego celu. Np. można połączyć S1 z S4 poprzez S3. S3 musi mieć włączone przekazywanie pakietów między sieciami, a w S1 piszesz:

Kod: Zaznacz cały

route add -net 192.168.2.0 netmask 255.255.255.0 eth1
Można też S1 połączyć z S4 za pomocą interfejsu eth0, czyli adresy 192.168.1.1 i 192.168.2.2 ale maska dla obu musi być krótsza, konkretnie 255.255.0.0. Wtedy będą się widziały ale jednocześnie zniknie podział na sieci.
Moim zdaniem ten pierwszy sposób jest lepszy, bo łącznik S3 daję ci iptables do ręki i pełną kontrole nad tym co i jak dokładnie między tymi sieciami może się łączyć albo nie łączyć.

: 26 lutego 2009, 12:06
autor: Raffaello22
Nie rozumiem cały czas po co te kombinacje. Ustaw sobie na S3 192.168.1.3, a na S4 192.168.1.4 i będzie wszystko dobrze bez żadnego routingu.
Hmm bo teraz wszystko w jednym VLANIE i inna adresacja. Taka adresacja niesie tylko same problemy. No i to łącze punkt punkt, a adres 10.0.0.0/8 z maską 8. Dla takich łącz wystarczy maska /30. Spore marnotrawstwo adresów.

Pozdrawiam.

: 26 lutego 2009, 23:30
autor: piroaa
Nie rozumiem cały czas po co te kombinacje. Ustaw sobie na S3 192.168.1.3, a na S4 192.168.1.4
Będzie działać wtedy wszystkie znajdą się w jednej podsieci więc ruting nie będzie wymagany, a ta zabawa jest tylko po to robiona by móc zademonstrować jak działa ruting.
Ponieważ jak już wspomniałem cała ta zabawa służy do demonstracji rutingu a koszty jej mają być jak najmniejsze, dla tego właśnie wyszła ta dziwaczna struktura, zamiast kupować dwa przełączniki, po jednym dla podsieci, kupiłem jeden, hosty w rożnych podsieciach i tak się nie widzą więc ma to sens.

: 27 lutego 2009, 00:21
autor: Raffaello22
Tylko że routing nie polega na tym żeby się pingowały interfejsy routerów w takiej strukturze, tylko w głownej mierze aby mieć dostęp z jednej podsieci która jest za routerem do drugiej która jest za drugim routerem itd. Ciężko będzie Ci tutaj wdrożyć jakikolwiek protokół routingu dynamicznego bo nawet nie ma co rozgłaszać. Jeżeli te routery na Debianie postawione to spróbuj zasymulować jakaś sieci lokalne za routerami za pomocą loopbacków (o ile się da nie sprawdzałem) ewentualnie podinterfejsów (to się napewno da). Wtedy będziesz się mógł pobawić w ustawianie tras statycznych do tych podsieci czy pobawić się danym protokołem routingu. Co do ćwiczenia routingu polecam dynamipsa, emulator routerów CISCO, ewentualnie pakiet quagga na Linuksie.

Czyli robisz sobie np coś takiego

192.168.10.0/24.........R1---------------przełącznik---------------R2-----------------192.168.20.0/24
....................................................podsieć 192.168.1.0/30.......................................................

I teraz komputery za routerem R2 muszą pingować się z tymi za routerem R1.

Pozdrawiam.