Nowe posty

Autor Wątek: Dwa łącza. Podział statyczny  (Przeczytany 7042 razy)

supaplex

  • Gość
Dwa łącza. Podział statyczny
« dnia: 2010-05-14, 19:16:17 »
Witam!
Mam aktualnie dwie sieciówki na Routerze Debian w powłoce tekstowej.
Skonfigurowany standardowy routing, włączone na iptables forwardowanie. Komputery z sieci lokalnej ładnie korzystają sobie z internetu podłączonego do tego komputera z drugiej strony.

Dokładam na eth2 drugie łącze i chciałbym, aby wszystko nadal działało tak, jak do tej pory, z małym wyjątkiem:

Jeżeli ktoś będzie się chciał połączyć z pulą adresów załóżmy 213.0.0.0 (obojętnie czy www, p2p, itp.) to router ma wykorzystać do tego dodatkowe łącze.
Relaksowało by Mnie nawet rozwiązanie: jeżeli ktoś wchodzi na www.wp.pl lub www.onet.pl to korzysta z dodatkowego łącza eth2, natomiast cała reszta ruchu jak do tej pory.

Nie interesuje Mnie wychwytywanie na jakim porcie lub jaki tym pakietu leci. Na podstawie samego docelowego adresu IP, bądź docelowej puli adresów IP router będzie kierował ruch na wskazane, dodatkowe łącze.


Jak się do tego zabrać? Mam ustawić dwie defaultowe bramy: jedną jak teraz, a drugi default skierowany na barmę w drugiej sieci ?

Chciałbym, aby ktoś mnie pokierował na co zwrócić uwagę i jak się do tego zabrać.

Przyznam szczerze, że serwer stawiałem za czasów SDI. potem zmiana na Neostradę, potem DSL. Ludzi nie przybyło - tylko się łącze zwiększało. Teraz wstawiłem drugie w celu statycznego podziału tak jak pisze wyżej. Pojęcie jakieś mam, ale nie wiem od którego HOWto zacząć ;/

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3067
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Dwa łącza. Podział statyczny
« Odpowiedź #1 dnia: 2010-05-15, 09:46:01 »
1. Czy masz tam NAT, czy każdy klient ma statyczny adres i Debian robi tylko za router?
2. Jeżeli statyczny, to czy pula jest PI czy PA?

---
Jeżeli masz NAT, to rozwiązanie jest takie:
1. Ustawiasz routing sieci 213.xxx na bramę łącza 2-go
2. Ustawiasz NAT warunkowy - jeżeli celem jest sieć 213.xxx to natujesz się na adres publiczny łącza 2-go. Pozostałe sieci natujesz po staremu.

---
Jeżeli to czysty router, to w kierunku OD ciebie wystarczy ustawić trasę do 213.xxx przez bramę od łącza 2. Problemem jest POWRÓT pakietów - będą wracać tym łączem, przez które świat widzi twoją pulę. Aby świat widział oba twoje wejścia i balansował na nie ruch, musisz uruchomić na nich BGP.

Rozwiązaniem częściowym byłoby routowanie zwykłego ruchu a natowanie na adres łącza 2 ruchu do 213.xxx . Wtedy pakiety os 213.xxx wracałyby przez łącze 2.

Pozdrawiam.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

supaplex

  • Gość
Dwa łącza. Podział statyczny
« Odpowiedź #2 dnia: 2010-05-15, 14:13:55 »
Dziękuję za zainteresowanie.

Tak. Lokalna sieć ma NAT. Komputery za NET'em mają "z ręki" wpisane ustawienia prowadzące na bramę, którą jest rzeczowy Debian.

Aktualnie domyślną trasą (default) jest sieć eth1 z moim zew. adresem IP i bramą routera brzegowego. Tam też kierowany jest ruch za pomocą:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Teraz dodając eth2 z drugim łączem mam ustawić w tabeli route drugą domyslną bramę (default) z drugim adresem zew. ip i bramą routera brzegowego?

Tak ustawiona podwójna brama default na różne interfejsy, da sie za pomocą innych reguł iptables "-t nat" niż w/w przekonfigurować tak, aby w zależności od tego jaki adres/adresy/pule są docelowe - tam ma być ruch trasowany ? (jeżeli ktoś chce wejść na coś z puli 213.x to natuj na eth2, a jak nie to natuj na eth1 ?)

Pytam, bo dostęp do dalszych prac będę miał dopiero po weekendzie i chciałbym mieć fundament do dalszych prac.

PS. Mury będę stawiał chyba na HowTo iptables ;-)

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3067
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Dwa łącza. Podział statyczny
« Odpowiedź #3 dnia: 2010-05-16, 17:51:01 »
No pisałem, że na drugie łącze nie robisz routingu domyślnego a specyficzny dla danego celu.

Po pierwsze, robisz masq na eth2
iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE
(czyli teraz masz 2 wpisy, jeden dla eth1, jeden dla eth2)

Teraz robisz routing statyczny, np dla 213.x.x.x/8 będzie to
route add -net 213.0.0.0 netmask 255.0.0.0 gw ip.bramy.karty.eth2
To routing decyduje, którym łączem wyjdzie pakiet, nie NAT.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

supaplex

  • Gość
Dwa łącza. Podział statyczny
« Odpowiedź #4 dnia: 2010-05-17, 10:45:51 »
route add -net 213.0.0.0 netmask 255.0.0.0 gw ip.bramy.karty.eth2 [b] dev eth2 [/b]
To działa, ale pod warunkiem, że ip.bramy.karty.eth2 ma inny numer niż adres ip karty sieciowej mojego serwera po stronie sieci wewnętrznej. Wychodzi na to, ze jest kolizja wynikającego z tego, że kieruje dane na bramę o takim samym numerze ip, jaki posiada debian na innym interface.
Troche to dziwne, tym bardziej, że wskazuje mu usilnie, że pakiety mają iśc na bramę umieszczoną w eth2. (dev eth2)

Wykonanie polecenia z cytatu bez dev eth2 jw. powoduje, ze routuje na sieć wewnętrzną eth0 co jest nie logiczne.

Aktualnie komputery w sieci lokalnej łączą się z debianem jako swoją bramą pod adresem ip 10.0.0.1. Okazuje się, że dodatkowe łącze na eth2 o którym tutaj mowa znajduje się w tej samej puli adresowej i tamta brama też ma numer ip 10.0.0.1.

W momencie gdy wykonam polecenie w cytacie jw. polecenie route odmiawia wykonania.

Sprawę załatwia zmiana adresu IP w sieci wewnętrznej na 10.0.0.2 oraz zmiana w ustawieniach każdego komptuera, aby łączył się od teraz z bramą 10.0.0.2.

Czy istnieje jakaś szansa, by w tej konfiguracji router miał po jednej stronie adres ip taki sam, jak brama po drugiej stronie ?

Zaznaczam, że routing domyślny generalnie musi być ustawiony na łącze eth1, gdzie adresacja jest już oparta na zewnętrzne ip komptuera i bramy.