外部IP /ポートへのリクエストを別の外部IP /ポートにリダイレクトしますか?


14

特定のIP /ポートへの接続を外部IP /ポートにリダイレクトすることは可能ですか?

例:

  • サーバーAには外部IP xxx.xxx.xxx.xxxがあります
  • サーバーBには外部IP yyy.yyy.yyy.yyyがあります
  • ユーザーがポート2106でサーバーAにリクエストを送信しました。ポート2106でサーバーBにリダイレクトしたいです。

2
詳しく説明してもらえますか?マシン「A」はマルチホームゲートウェイですか?はいの場合、おそらくiptablesを使用できます。例:iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 2106 -j DNAT --to yyyy:2106 iptables -A INPUT -p tcp -m state --state NEW --dport 2106 -i eth1- j ACCEPT
愚か者

@bumbling foolありがとう、私はすでにそれを解決し、私がやったことの下に投稿しました。
プリックス

回答:


22

問題が解決しました:

sysctl net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp --dport port -j DNAT --to-destination ip:port
iptables -t nat -A POSTROUTING -j MASQUERADE

ipとportは、現在のサーバーポートをリダイレクトするターゲットサーバーです。


これは私には機能しません。具体的には、その最後の行により、マシンからそれ自体へのすべてのトラフィックが外部から来ているように見え、同様の問題が発生します。
singpolyma

@Prixは、指定されたポート(2106)へのすべてのトラフィックをyyy.yyy.yyy.yyy:portにリダイレクトしませんか?xxx.xxx.xxx.xxx:portのみに向かうトラフィックをリダイレクトしたい場合はどうすればよいですか?
ジェゾール
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.