対称NAT、フルコーンNATなど、さまざまなタイプのNATが利用可能であることを読みました。 NATの背後にある場合、現在処理中のNATタイプを確認する方法はありますか?
デフォルトのiptablesルールを使用し、ネットワークカードを追加してUbuntuデスクトップをNATシステムに設定しました。私は次のルールを使用しました。
$ iptables -t nat -A POSTROUTING --out-interface eth0 -j MASQUERADE
$ iptables -t filter -A FORWARD --in-interface eth1 -j ACCEPT
私のNATテーブルを見る方法はありますか?
答え1
pystun を使用して nat タイプを確認できます。ここhttps://pypi.python.org/pypi/pystun
$ pystun
NAT Type: Full Cone
External IP: <your-ip-here>
External Port: 54320
答え2
答え3
(stunclient
のコードを使用できます。stuntman
http://www.stunprotocol.org):
$ stunclient stun.stunprotocol.org --mode behavior
Binding test: success
Local address: 192.168.1.10:51593
Mapped address: 62.24.7.97:11610
Behavior test: success
Nat behavior: Address and Port Dependent Mapping
答え4
iptables -S
現在カーネルフィルタリングテーブルにロードされているすべてのルールリストダンプを実行できます。オプションで、-t
パラメーターを追加して、ダンプする特定の表を指定できます。
からman iptables
:
-S, --list-rules [chain]
Print all rules in the selected chain. If no chain is selected,
all chains are printed like iptables-save.Like every other
iptables command, it applies to the specified table (filter is
the default).
クライアントとして使用しているNATの種類を知ることに関して簡単に使用できる情報はありません。設定方法について知るための最良の方法は、トラフィックに与える影響を調べることです。