Kanske en fråga som dykt upp många gånger tidigare, men det har med port forwarding med iptables att göra. Jag kör en server (DC-hub) på en lokal maskin 192.168.0.12 (windows) och har debianmaskinen som gateway för det lokala nätverket med ip 81.172.x.x. eth0 är det externa kortet med ip 81.172.x.x, och eth1 det interna med ip 192.168.0.1. Jag kör port forwarding med raden: iptables -t nat -A PREROUTING -p tcp --dport 4411 -i eth0 -j DNAT --to-destination 192.168.0.12:4411
Detta fungerar utmärkt med avseende på att inkommande uppkopplingar mot port 4411 skickas till rätt port på den interna servern. Problemet uppkommer när de interna maskinerna vill nå servern. Jag kan inte ange adressen 81.172.x.x:4411, utan måste ge den interna adressen 192.168.0.12:4411. Problemet med det är att dc-hubben får fel information, så att andra klienter inte kan nå de interna klienterna. Jag vill inte köra dem i passive mode. Det jag vill kunna göra är att adressen 81.172.x.x:4411, som är hubbens adress för alla externa klienter ska kunna nås på samma sätt av de interna klienterna. Jag har inte kunnat komma på hur jag ska tala om för iptables att även om interna datorer vill nå 81.172.x.x:4411, så ska även de uppkopplingarna skickas till 192.168.0.12:4411. Nån som har en bra idé? //Ivar