대칭 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 유형을 아는 것과 관련하여 쉽게 사용할 수 있는 정보는 없습니다. 설정 방법에 대해 알 수 있는 가장 좋은 방법은 트래픽에 미치는 영향을 살펴보는 것입니다.