본문 바로가기

Web Develop Tech/Network

네트워크 - NAT 의 종류


NAT는 크게 Cone NAT와 Symmetric NAT로 나뉩니다.
다시 Cone NAT는 Full Cone, Restricted Cone, Port Restricted Cone으로 나뉩니다.

Cone NAT의 경우내부망의 IP:Port에 대해Destination에 관계없이공유기의 외부 IP:Port가 변하지 않는다는 것이고 Symmetric NAT의 경우Destination에 따라 다른 공유기의 외부 IP:Port를 가진다는 것입니다. 이해가 되시나요?

다시 풀어서 설명드리면,

Cone의 경우내부망의 192.168.1.100:5060가 공인망의sip.com:5060으로 트래픽을 보낼 때, 공유기의1.1.1.1:12345로 매핑이 된다면192.168.1.100:5060another.sip.com:5080으로 트래픽을 보내도 공유기에서는1.1.1.1:12345로 매핑이 된다는 것입니다.

사용자 삽입 이미지


Symmetric의 경우내부망의 192.168.1.100:5060가 공인망의sip.com:5060으로 트래픽을 보낼 때, 공유기의1.1.1.1:12345로 매핑이 되고 만약다른 목적지인 another.sip.com:5080으로 트래픽을 보내면 공유기의1.1.1.1:67890과 같은 다른 IP:Port로 매핑된다는 것입니다.

사용자 삽입 이미지

Cone NAT의 3가지의 경우 access-list를 생각하면 쉽게 이해가 됩니다.
(외부에서 공유기의 NAT Hole을 통해 들어오는 트래픽에 대해서,)
Full Cone의 경우permit tcp/udpanyhost 192.168.1.100 eq 5060
Restricted Cone의 경우permit tcp/udphost sip.com eq anyhost 192.168.1.100 eq 5060
Port Restricted Cone의 경우permit tcp/udphost sip.com eq 5060host 192.168.1.100 eq 5060
등의 체크를 해서 트래픽을 보내준다는 것입니다.

마지막으로 다시 정리하면....

Cone NAT의 경우 내부의 IP:Port에 대해 Destination에 관계없이 동일한 외부의 IP:Port로 매핑되고, Symmetric NAT의 경우 Destination에 따라 다른 외부의 IP:Port를 사용합니다.
Full Cone의 경우 들어오는 트래픽의 Source IP와 Port에 대해 검사없이 NAT Table의 Mapping대로 릴레이하고 Restricted는 IP만 체크하면 Port Restricted는 IP와 Port모두 체크 합니다.

그럼 왜 VoIP이나 P2P에서 NAT Traversal에 대해 골머리를 앓고 있는지, STUN은 왜 Symmetric NAT에 대해 지원이 안되는지, 왜 Skype는 UDP Relay Server를 써서 음성을 전달하는지 한번 곰곰히 생각해 보시기 바랍니다.

'Web Develop Tech > Network' 카테고리의 다른 글

NETWORK - JITTER  (0) 2012.08.15