Portál AbcLinuxu, 26. července 2025 20:28
iptables -t nat -A PREROUTING -d $cilova_ip -j DNAT --to $jina_ip
- tj. pokud přijde na router paket směřující na adresu $cilova_ip, bude zanatován na adresu $jina_ip.
Obávám se, že váš problém je ve skutečnosti úplně v něčem jiném, než kde ho hledáte. Nejspíš jste si dal FTP server do vnitřní sítě a máte nastavený portforwarding z veřejné IP adresy na ten server. Problém je v tom, že když z toho samého segmentu zkusíte spojení na tu veřejnou adresu, přesměrování funguje správně, ale server pošle odpověď přímo (proč taky ne, když je klient ve stejném segmentu), takže nikdo nepřeloží odpovídajícím způsobem zdrojovou adresu odpovědi a klient tudíž nepozná, že je to odpověď.
Správné řešení je necpat veřejně dostupný FTP server do vnitřní sítě, ale dát ho do DMZ. Nesprávná řešení jsou dvě: buď u klientů z vnitřní sítě přeložit i zdrojovou adresu (tj. něco jako maškaráda), aby odpověď šla opět přes router, který přeloží obě adresy zpátky (fujtajbl), nebo klientům z vnitřní sítě překládat jméno odpovídající veřejné adrese ne na ni, ale na skutečnou IP adresu toho FTP serveru (o něco menší fujtajbl).
PREROUTING
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.