본문 바로가기
Network/old

NAT (Network Address Translation)

by 슬픈 야옹이 2023. 1. 5.

NAT(Network Address Translation)란 네트워크 내부의 호스트들은 사설 IP를 사용하고,

네트워크 외부와 통신할 때 공인 IP로 변환하여 통신하도록 네트워크를 구성하는 기술을 말한다.

 

사설 IP란 네트워크 내부에서만 사용되는 주소를 말한다.

사설IP로는 해당 호스트가 속한 네트워크 말고는 다른 곳과 통신할 수 없다.

네트워크 내부에서만 사용되기 때문에 다른 네트워크에서 같은 사설IP주소를 사용할 수도 있다.

 

그에 반해 공인 IP는 인터넷에서 실제 통신이 가능한 IP주소를 말한다.

공인IP를 통해서는 인터넷 상에서 자유롭게 통신할 수 있다.

 

비유하자면 공인IP는 주민번호 같은 것이다.

나의 주민번호는 대한민국에서 유일하므로 한국의 어디서든 내가 누군지 식별할 수 있다.

 

그에 반해 사설IP는 내가 다니는 학교에서만 쓰는 학번 혹은 친구들끼리 쓰는 별명 같은 것이다.

이러한 것들은 학교를 벗어나거나 친구들끼리가 아니면 '나'를 식별할 수 없다.

 

NAT에는 다음 몇 가지 특징이 있다.

- NAT를 구성할 때 사설IP : 공인IP를 1:1, N:1 모두 구현 가능하지만 현재 1:1 방식으로는 구현하지 않는다.

 

- 또한 유닉스 기반 운영체제에서 masquerading(마스커레이딩) 이라는 이름의 기능으로 NAT기능을 지원한다.

 

- NAT기능을 제공하는 단독 장비를 공유기라 부른다.

 

- 본래 NAT는 인터넷에 연결된 호스트 수가 폭발적으로 늘어나면서 발생한 IP주소의 부족 현상을 해결하기 위해

사용된 기술이지만, 보안 성능이 우수하여 그에 상관없이 널리 쓰이고 있다.

 

 

다음은 NAT를 이용하여 구성한 네트워크 예시다.

 

공인 IP주소는 공유기에 하나만 할당되어 있으며, 내부 네트워크는 192.168.10.x의 사설 IP를 이용하여 구성하였다.

네트워크 내부의 호스트가 외부로 패킷을 보낼 때 공유기를 거치면서 출발지 주소가 사설IP(192.168.10.x)에서 공인IP(14.36.28.146)으로 변환되어 전송된다.

 

따라서 외부에서는 14.36.28.146의 IP주소를 가진 컴퓨터 1대가 있는걸로밖에 보이지 않는다.

내부에 네트워크가 있는지, 있다면 규모가 얼마나 되는지 등의 정보를 외부에서는 전혀 확인할 방법이 없다.

이러한 특징 때문에 NAT는 보안 성능이 매우 우수하며, 다양한 곳에서 이러한 방식으로 네트워크를 구성하고 있다.