Puncte:1

Routerul Linux a folosit pentru a redirecționa traficul din exterior către un dispozitiv intern, dar dispozitivul intern trebuie să răspundă folosind un alt port

drapel in

Lucrez la un router între un radio/modem extern și dispozitivul meu, unde routerul face o conexiune dial-up folosind protocolul ppp la radio și stabilește reguli iptables între IP-ul radio primit și IP-ul dispozitivului meu.

Am urmatoarele rute:

Destination Gateway Genmask Flags Metric Ref Utilizare Iface
implicit 192.168.1000.101 0.0.0.0 UG 0 0 0 ppp0
192.168.100.101 * 255.255.255.255 UH 0 0 0 ppp0
192.168.164.0 * 255.255.255.0 U 0 0 0 eth0

Și iată următoarele reguli iptables:

iptables -A INTRARE -j ACCEPT
iptables -A IEȘIRE -j ACCEPT
iptables -A FORWARD -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A IEȘIRE -o lo -j ACCEPT
iptables -t nat -A PREROUTING -i ppp0 -p tcp -j DNAT --la 192.168.0.110
iptables -t nat -A PREROUTING -i ppp0 -p udp -j DNAT --la 192.168.0.110
iptables -t nat -A POSTROUTING --source 0/0 -o ppp0 -j MASQUERADE

Cu aceste reguli pot accesa totul de pe dispozitivul meu, cum ar fi telnet, server web și alte comunicații folosind porturi înalte.

Problema mea este că trebuie să mă conectez la dispozitivul meu folosind un port sursă cu un port de destinație, iar aceasta nu este o problemă, dar dispozitivul meu trebuie să răspundă folosind un alt port creat pentru ca această comunicare să continue.

De exemplu, încerc să fac o conexiune folosind portul sursă 2000 cu portul de destinație 2001 și răspunsul dispozitivului meu revine folosind portul sursă 21550 și portul de destinație 2000. Dar răspunsul nu ajunge înapoi la clientul conectat la cealaltă parte a radioului .

Folosind tcpdump în interiorul routerului meu, am văzut răspunsul dispozitivului, dar nu mi-am putut da seama cum să gestionez aceste modificări de port în regulile iptables pentru a-l trimite înapoi către clientul conectat la cealaltă parte a radioului.

Orice ajutor va fi foarte apreciat!

Michael Hampton avatar
drapel cz
Nu folosiți NAT. Doar traseu normal.
VBalestero avatar
drapel in
Michael mulțumesc pentru răspunsul rapid. Dar observ că înțeleg răspunsul tău, vrei să spui să nu folosești iptables, doar tabelul de rute, este corect?
Ron Maupin avatar
drapel us
NAT _nu_ este un substitut pentru rutare. Nu utilizați NAT decât dacă trebuie (adresare de la privat la public sau care se suprapun). Nu aveți niciun motiv pentru NAT, deoarece aveți o adresare privată care nu se suprapune, așa că puteți pur și simplu să rutați și să ocoliți toate problemele NAT.
VBalestero avatar
drapel in
Mulțumesc pentru răspunsurile rapide, o voi încerca fără iptables.
djdomi avatar
drapel za
Mai mult, văd că încercați să utilizați unele porturi, vă rugăm să ne spuneți ce încercați să remediați (problema X și Y)

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.