← Back to team overview

sslug-teknik team mailing list archive

Re: Port forwarding

 

Jesper K. Pedersen wrote:

Jeg formoder du prøver fra lokalnettet, hvor du har maskinerne til at
køre.
Ved at gøre det får du et problem.

Forespørgslen kører sådan her igennem ip systemet sådan her:
Klient -> 192.168.1.160:81 -> 192.168.1.129:80

Svaret:
192.168.1.129:80 -> Klient

Dvs. serveren sender svar direkte til klienten, som forventer et svar
fra .160 maskinen og ikke .129 og ved derfor ikke at de har noget med
hinanden at gøre.

Hvad du skal gøre er at få .160 til at sætte forespørgselsadressen til
.160

Det gør du sådan her (hvis dit netværk er 192.168.1.0/24):

iptables -t nat -A POSTROUTING -d 192.168.1.129 -s 192.168.1.0/24 -p tcp
--dport 80 -j SNAT --to 192.168.1.160


Så burde det virke.

Mvh
Jesper K. Pedersen



Tak for hjælpen.
Ja, det lyder jo logisk nok men dette virker heller ikke:

[root@playstation ~]# echo "1" >/proc/sys/net/ipv4/ip_forward
[root@playstation ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp -d 192.168.1.160 --dport 81 -j DNAT --to-destination 192.168.1.129:80
[root@playstation ~]# iptables -A FORWARD -i eth0 -o eth0 -p tcp -d 192.168.1.129:80 --dport 81 -m state --state NEW -j ACCEPT
[root@playstation ~]# iptables -t nat -A POSTROUTING -d 192.168.1.129 -s 192.168.1.0/24 -p tcp --dport 80 -j SNAT --to 192.168.1.160

Er der nogen fejl ?
Hmm...jeg har da lidt at Google efter nu.



Follow ups

References