リモートアドレスをローカルに転送中に、DNATがハング

リモートアドレスをローカルに転送中に、DNATがハング

サーバーには、ポート80に接続するときにnginxと同様に192.168.154.200転送したいIPアドレスがあります。127.0.0.1:8000proxy_pass http://127.0.0.1:8000

だから私は次のことを試しました。

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -I PREROUTING -d 192.168.154.200 -p tcp --dport 80 -j DNAT --to 127.0.0.1:8000
iptables -t nat -A POSTROUTING -j MASQUERADE

まったく動作しません。curl 192.168.154.200クライアントでこれを行うと、動作が停止します。私が見逃しているものは何ですか?

PSはcurl 127.0.0.1:8000サーバー上で実行されます。

ベストアンサー1

努力する

sysctl -w net.ipv4.conf.eth1.route_localnet=1

または

sysctl -w net.ipv4.conf.all.route_localnet=1

カーネルがそれをサポートしていることをもう一度確認することをお勧めしますroute_localnet。 eth1 を適切に交換してください。

セキュリティ上の理由から、route_localnetこの機能はオフになっています。

おすすめ記事