web-dev-qa-db-ja.com

あるパブリックIP(Linux)から別のパブリックIP(Windows)にUDPトラフィックをルーティングする方法

Windowsマシンに直接アクセスできないようにし、Linuxマシン(パブリックIPからアクセス可能)を介してWindowsマシンで実行されているいくつかのプログラムを公開したいと思います。

Linuxマシンを構成できる方法はありますか(たとえば、IP = a.b.c.d)は、特定のポートで取得するすべてのUDPトラフィックをルーティングします(たとえば、6667)私のWindowsマシンに(たとえばIP = e.f.g.h)ポート6668

はい、どうすれば実装できますか?

[〜#〜] update [〜#〜]

# bindadress    bindport  connectaddress  connectport

192.168.2.45    6667    192.168.2.104   6668

# logging information
logfile /var/log/rinetd.log

# uncomment the following line if you want web-server style logfile format
logcommon
~          

[〜#〜] update [〜#〜]

UDPトラフィックのみをルーティングしたいと思います。

2
Mahendra Liya

次のセクションはTCPのみ)で機能します(これはMahendraがタイトルを変更する前に公開されました

Rinetdをインストールします。このプログラムでは、着信ポートと発信ポートを簡単に構成できます。まず、プログラムをインストールします。次に、/ etc /rinetd.confを変更します

例:

#bindadress bindport connectaddress connectport

a.b.c.d 6667 e.f.g.h 6668

UDPについては、以下のリンクを確認してください

http://brokestream.com/udp_redirect.html

これは実際に問題を解決したチャットディスカッションからです

iptables -t nat -A PREROUTING -i $EXT_IF -p udp -d $EXT_IP --dport 53 -j DNAT --to-destination $INTERNAL_SERVER

and make sure you also have it allowed to pass through the FORWARD chain with something like

#forward traffic
iptables -A FORWARD -i $EXT_IF -o $INT_IF -p udp -d $INTERNAL_SERVER --dport 53 -j ACCEPT
#reply traffic
iptables -A INPUT -o $EXT_IF -i $INT_IF -p udp -s $INTERNAL_SERVER --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
4

はい、これはリバースNATと呼ばれ、LinuxのIpTables機能の一部です。まともなNATtinsファイアウォールはすべて、サービスを公開するためにそれを行います。

1
TomTom