iptables - przekierowanie portu na inne IP:port
-
- Piegowaty Guziec
- Posty: 10
- Rejestracja: 11 lis 2006, 01:19
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: Brak
- Architektura: x86
iptables - przekierowanie portu na inne IP:port
Mam komputery w jednej sieci 192.168.1.0/255.255.255.0
Komputer A 192.168.1.1 - Ubuntu Server 8.10
Komputer B 192.168.1.2 - Windows XP
Komputer C 192.168.1.3 - Windows XP
chciałbym ustawić przekierowanie portu na A tak, żeby przy połączeniu(wysłaniu pakietów) z B na (A)192.168.1.1:5900 przekierowało połączenie na (C)192.168.1.3:5900.
Próbowałem już kilkadziesiąt kombinacji z iptables PREROUTING I FORWARD niestety nic nie działa.
Jakie muszą być poprawne wpisy iptables?
Komputer A 192.168.1.1 - Ubuntu Server 8.10
Komputer B 192.168.1.2 - Windows XP
Komputer C 192.168.1.3 - Windows XP
chciałbym ustawić przekierowanie portu na A tak, żeby przy połączeniu(wysłaniu pakietów) z B na (A)192.168.1.1:5900 przekierowało połączenie na (C)192.168.1.3:5900.
Próbowałem już kilkadziesiąt kombinacji z iptables PREROUTING I FORWARD niestety nic nie działa.
Jakie muszą być poprawne wpisy iptables?
-
- Sędziwy Jeż
- Posty: 79
- Rejestracja: 07 mar 2008, 13:01
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
Odp: iptables - przekierowanie portu na inne IP:port
zainteresuj się NATem. A ściślej mówiąc czymś co nazywa się destination routing (DNAT)
-
- Piegowaty Guziec
- Posty: 10
- Rejestracja: 11 lis 2006, 01:19
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: Brak
- Architektura: x86
Odp: iptables - przekierowanie portu na inne IP:port
Szukałem już wcześniej na necie i tak jak pisałem testowałem różne wpisy iptables, które niby powinny działać a nie działają.
Mój nadal nie działający skrypt obecnie wygląda tak:
Mój nadal nie działający skrypt obecnie wygląda tak:
#!/bin/sh
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -F -t nat
iptables -X -t nat
iptables -F -t filter
iptables -X -t filter
iptables -t filter -P FORWARD ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.1 --dport 5900 -j DNAT --to 192.168.1.3:5900
-
- Sędziwy Jeż
- Posty: 79
- Rejestracja: 07 mar 2008, 13:01
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
Odp: iptables - przekierowanie portu na inne IP:port
A czy w /etc/sysctl.conf zmienną net.ipv4.ip_forward masz ustawioną na 1?
-
- Piegowaty Guziec
- Posty: 10
- Rejestracja: 11 lis 2006, 01:19
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: Brak
- Architektura: x86
Odp: iptables - przekierowanie portu na inne IP:port
W /etc/sysctl.conf jest ustawione na 1, ale zakomentowane(#). Ale przy innej konfiguracj - kilku sieciach i maskaradach działa routing z jednej sieci na druga.
-
- Sędziwy Jeż
- Posty: 79
- Rejestracja: 07 mar 2008, 13:01
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.10
- Środowisko graficzne: GNOME
Odp: iptables - przekierowanie portu na inne IP:port
żeby zrobić coś takiego komputer na którym robisz NAT musi mieć 2 karty sieciowe. Jedną z nich podłączony jest do Internetu a na drugiej ustawiasz NAT. W takim przypadku możesz zrobić coś takiego że klient łączący się z Twoim komputerem na określony port w rzeczywistości łączy się z komputerem stojącym za NATem.
-
- Sędziwy Jeż
- Posty: 32
- Rejestracja: 01 gru 2008, 03:56
- Płeć: Mężczyzna
- Wersja Ubuntu: 9.10
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: iptables - przekierowanie portu na inne IP:port
Nie znam się na linuxie ale znam się na sieciach
przekierowujesz połączenie wewnątrz jednej sieci lokalnej... w związku z powyższym
jeśli ustawisz dnat w jedną stronę - to host 192.168.1.3 odpowie bezpośredni (po arpie) do 192.168.1.2 - problem jest taki - że wtedy nadawcą będzie 192.168.1.3 a nie tak jak 1.2 się spodziewa - 1.1 ...
najprościej to zmień adresację ... tak by 1.3 nie myślał że 1.2 jest w tej samej sieci - tylko wysyłał odpowiedź na bramę domyślą (router 1.1) i powinno działać
a nie najprościej... chmm... to nie wiem
----
ps nie znam się na linuxie ale maverick84 się myli - możesz działać na nieskończonej ilości interfejsów "wirtualnych" tylko wtedy brodcasty ci się będą rozsiewać po wspólnej sieci lokalnej - ale to ci chyba nie szkodzi...

przekierowujesz połączenie wewnątrz jednej sieci lokalnej... w związku z powyższym

jeśli ustawisz dnat w jedną stronę - to host 192.168.1.3 odpowie bezpośredni (po arpie) do 192.168.1.2 - problem jest taki - że wtedy nadawcą będzie 192.168.1.3 a nie tak jak 1.2 się spodziewa - 1.1 ...
najprościej to zmień adresację ... tak by 1.3 nie myślał że 1.2 jest w tej samej sieci - tylko wysyłał odpowiedź na bramę domyślą (router 1.1) i powinno działać
a nie najprościej... chmm... to nie wiem

----
ps nie znam się na linuxie ale maverick84 się myli - możesz działać na nieskończonej ilości interfejsów "wirtualnych" tylko wtedy brodcasty ci się będą rozsiewać po wspólnej sieci lokalnej - ale to ci chyba nie szkodzi...
-
- Piegowaty Guziec
- Posty: 10
- Rejestracja: 11 lis 2006, 01:19
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: Brak
- Architektura: x86
Odp: iptables - przekierowanie portu na inne IP:port
Z NATem i dwoma sieciami już próbowałem wcześniej i tak to działa bez problemów. Niestety musi to być użyte w jednej sieci i nie można zmienić adresacji.
Poczytam w takim razie o interfejsach wirtualnych.
Poczytam w takim razie o interfejsach wirtualnych.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 10 gości