NAT 유형 확인

NAT 유형 확인

대칭 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

다음을 기반으로 NAT 뒤가 아닌 서버에 연결하는 클라이언트를 실행해야 합니다.현기증그러면 패킷이 분석되고 정보가 반환됩니다. 또한,회전하다약간 새로운 기능이며 NAT 유형을 식별하는 데 도움이 되는 정보도 반환합니다.

작동할 수 있는 클라이언트, 스택, 패키지는 다음과 같습니다. 연결할 서버를 컴파일하고 찾거나 직접 실행해야 합니다.

답변3

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

관련 정보