Wojciech Kubiak

Wojciech Kubiak Cloud Unit Leader,
Cybercom Poland Sp.
z o.o.

Temat: Router z serwera linuxowego

Witam. Problem jest nastepujacy.
Mam serwer debianowy w sieci LAN1 podlaczony do switcha jedynym ze swoich interfejsow. Serwer świadczy uslugi WWW na porcie 80. Chciałbym aby pakiety pochodzące z sieci LAN2 (przez router) na port powiedzmy 12345 owego serwera WWW, były przezeń kierowane do innego komputera w tej samej sieci LAN1.
Zrobiłem prostą maskaradę zmieniając pakietom adres docelowy oraz źródłowy na ten serwera WWW, aby pakiety powrotne wracały przez serwer WWW.
Niestety nie działa.
Chciałbym wiedzieć czy taka konfiguracja jest w ogóle możliwa z teoretycznego punktu widzenia.

WWW----LAN1-------[router]------LAN2
(80)            |
                 |
                 |
WWW2------
(80)

Jutro podeślę konkretne polecenia "iptables" których próbowałem użyć.Wojciech Kubiak edytował(a) ten post dnia 15.02.10 o godzinie 12:52
Jakub L.

Jakub L. Programista

Temat: Router z serwera linuxowego

Regułki iptables?
Wojciech Kubiak

Wojciech Kubiak Cloud Unit Leader,
Cybercom Poland Sp.
z o.o.

Temat: Router z serwera linuxowego

Jak pisałem, konkretne regułki - jutro. Na razie oczekuje na info teoretyczne? Da się czy nie ?Wojciech Kubiak edytował(a) ten post dnia 14.02.10 o godzinie 19:18

Temat: Router z serwera linuxowego

Da się. Chociaż rzecze mówiącj bym uzył jakiegoś małego proxy (np jest taki pakiet redir w debie) zamiast bawić się iptables ;]
Janek Ziemkiewicz

Janek Ziemkiewicz tester
oprogramowania

Temat: Router z serwera linuxowego

Mariusz Gronczewski:
Da się. Chociaż rzecze mówiącj bym uzył jakiegoś małego proxy (np jest taki pakiet redir w debie) zamiast bawić się iptables ;]

albo po prostu tunel ssh
Robert Baranowski

Robert Baranowski Dyrektor techniczny

Temat: Router z serwera linuxowego

Hej,

odpowiadając na pytanie - da się, nawet na kilka sposobów. W grę wchodzą reguły iptables (troche ograniczone), serwer proxy.

Pozdrawiam

konto usunięte

Temat: Router z serwera linuxowego

iptables -t nat -A PREROUTING -p tcp -s LAN2/maskaLAN2 -d serwerLAN1 -dport 12345 -j DNAT --to innyserwerwLAN1

Można zrobić bez -s LAN2 wtedy wszystkie żądania będą przekierowywane.
Wojciech Kubiak

Wojciech Kubiak Cloud Unit Leader,
Cybercom Poland Sp.
z o.o.

Temat: Router z serwera linuxowego

Tak właśnie robiłem ale w ten sposób zmienię tylko adres docelowy.

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 12345 -j DNAT --to-destination WWW2:80

Nie powinienem jeszcze zadbać o to aby pakiety docierały do WWW2 z adresem źródłowym WWW1 aby ruch powrotny szedł przez WWW1 ?
W innym przypadku WWW2 odpowie bezpośrednio hostowi który stworzył pakiet dla WWW1. Ten z kolei nie będzie się spodziewał odpowiedzi z innego miejsca niż wysłał zapytanie i pakiet odrzuci.

Próbowałem dołożyć regułkę

iptables -t nat -A POSTROUTING -p tcp --dst WWW2 --dport 80 -j SNAT --to-source WWW1

konto usunięte

Temat: Router z serwera linuxowego

Wojciech Kubiak:
Chciałbym aby pakiety pochodzące z sieci LAN2 (przez router) na port powiedzmy 12345 owego serwera WWW, były przezeń kierowane do innego komputera w tej samej sieci LAN1.

http://www.goldenline.pl/forum/administratorzy/1373532...
Wojciech Kubiak

Wojciech Kubiak Cloud Unit Leader,
Cybercom Poland Sp.
z o.o.

Temat: Router z serwera linuxowego

Tiaaa... tyle że ja mam jeden interfejs sieciowy. Ale przyda się, dzięki.
Coś jeszcze spróbuje pokombinować z wirtualnymi interfejsami.

konto usunięte

Temat: Router z serwera linuxowego

Nic nie kombinuj. :)
Masz następujące wyjścia (według skomplikowania):
- redir na maszynie www (jak proponował Mariusz Gronczewski)
- postawić na www lvs'a i skonfigurować go w trybie masq podając za realsever www2 (wada - armata na komara, zaleta - będziesz mógł dostawić www3 gdyby www2 nie wyrabiał z ruchem
- bawić się iptablesami pamiętając, by na www2 zrobić regułę, która będzie odsyłać pakiety do www (lub jeżeli sytuacja na to pozwala ustawić na www2 defaul routing na www) oraz włączając na www net.ipv4.ip_forward=1
Wojciech Kubiak

Wojciech Kubiak Cloud Unit Leader,
Cybercom Poland Sp.
z o.o.

Temat: Router z serwera linuxowego

Ok. Wielkie dzięki wszystkim za pomoc. Rozwiązań mam już kilka. Poukładam sobie jutro wszystko w głowie i na spokojnie spróbuje w praktyce zastosować.
Jak ruszy, dam znać które rozwiązanie wybrałem :)
Redir o tyle nie będzie skuteczny ponieważ idea jest taka żeby ciacho sesyjne zapisywane przez serwisy działające na WWW(linux+ apache i PHP) mogło być weryfikowane na WWW2(windows+ IIS i .NET). Jak mi się zmieni adres w przeglądarce to ciacho nie zostanie odnalezione przez przeglądarkę pod nową "ścieżką".
Pracuję jeszcze nad systemem który będzie działał w oparciu o WebService ale i w tym przypadku jednakowa ścieżka ciasteczka sesyjnego dla obu platform będzie wskazana.Wojciech Kubiak edytował(a) ten post dnia 15.02.10 o godzinie 17:31

konto usunięte

Temat: Router z serwera linuxowego

Nie,nie. Redir nie przekierowuje przegladarki na inny adres, to jest takie proxy. Łączysz się na port redira na www a ten w tym samym momencie łączy się na www2. Po przesłaniu zapytania http do redira on natychmiast przesyła go do www2 a dostawszy odpowiedź odsyła ją do klienta. Problem jest tylko taki, że w logach www2 będziesz miał połączenia z IP www,tego nie przeskoczysz w żadnym z zaproponowanych rozwiązań ale nie powinno Ci to przeszkadzać w weryfikacji ciastka na www2.

Jeszcze jeden szatański pomysł przemknął mi przez głowę.
Stawiasz nginxa z http proxy. Wtedy będziesz mógł zrobić wygibasy w stylu:

http : //www/apache/ - i request zostanie przeproxowany do apache na www
http : //www/iis/ - i zapytanie pójdzie do www2

DArkadiusz Wójcik edytował(a) ten post dnia 15.02.10 o godzinie 21:54

konto usunięte

Temat: Router z serwera linuxowego

Wojciech Kubiak:
Tiaaa... tyle że ja mam jeden interfejs sieciowy. Ale przyda się, dzięki.

To nie powinno mieć znaczenia.
Wojciech Kubiak

Wojciech Kubiak Cloud Unit Leader,
Cybercom Poland Sp.
z o.o.

Temat: Router z serwera linuxowego

Dołożyłem dodatkowy interfejs do WWW1 i na nowej podsieci skonfigurowałem wszystko jak poprzednio. Takie rozwiązanie wydaje mi się najprostsze i przez to najmniej awaryjne. Wszystko działa jak powinno :)

WWW----LAN1-------[router]------LAN2
(80)
   |
   |
WWW2
(80)Wojciech Kubiak edytował(a) ten post dnia 16.02.10 o godzinie 13:34

Następna dyskusja:

router oparty na linuksie z...




Wyślij zaproszenie do