[네트워크] NAT(Network Address Translator)란??
IT/네트워크

[네트워크] NAT(Network Address Translator)란??

반응형

 

오늘은 NAT가 무엇인지에 대해 알아보겠습니다.

이어서 NAT를 AWS상에서 어떻게 구현할 수 있는지 2가지 방법에 대해 알려 드리겠습니다.

 

먼저 NAT가 무엇일까요? Network Address Traslaotr 로 직역해보면 네트워크주소 변환자 입니다.

직역한대로 네트워크 주소를 변환해 주는 역할을해주는 장비 입니다.

NAT는 공인IP를 사설IP로 변환해주며, 반대로 사설IP를 공인IP로 변환해주기도 합니다.

 

그럼 NAT를 사용하는 목적은 무엇일까요? 왜 네트워크 주소를 변환해주는걸까요?

 

첫째는, 공공망과 연결되는 사용자들의 고유한 사설망을 침입자들로부터 보호하기 위해 사용하며

둘째는, 인터넷의 공인 IP주소를 절약하고자 하는 목적으로 사용합니다.

 

앞전에 AWS에서 네트워크 설계하는 방법편에서 잠깐 언급이 되었었죠.

*링크 : https://kim-dragon.tistory.com/8

 

다시 사진을 가져와서 설명드리면 

사설망 1, 2 앞에 있는 공유기가 NAT역할을 하여 공인 IP를 사설IP로 바꿔주는 역할을 합니다. 

(일반적으로 라우터나 방화벽에서 이러한 기능을 사용합니다.)

 

이 경우 공인IP만 인터넷에 공개되어 내부 사설IP는 외부에서 알 수가 없으므로 내부 사설망의 자원들이 보호되는 것이죠. 외부에서 공유기를 거치지 않고서야 사설망의 PC에 접근할 수가 없게 됩니다.

 

반대로도 마찬가지로 사설 IP대역의 PC들이 인터넷을 사용하기 위해 나갈때 NAT를 거치면 공인IP로 변환이 되므로 

외부에서는 내부 사설망의 IP를 알 수가 없습니다.

 

 

 

 

 

 

NAT의 종류는 Static(정적) NAT, Dynamic(동적) NAT가 있습니다.

 

Static NAT는 주소들을 1:1 매핑으로 변환해주는 간단한 NAT유형입니다.

 

아래 그림을 예시로 들어보면 Client가 만든 초기 IP패킷의 헤더에는 Client의 사설 IP인 172.16.0.5를 공인IP 주소인 10.16.0.5로 변환한 뒤 인터넷을 통해 Server Web으로 나가게 됩니다.

 

 

 

Dynamo NAT 사설 IP와 공인 IP간의 정보를 생성하고, IP패킷이 네트워크에서 나가거나 들어올때 그 패킷 헤더의 IP 주소를 변환하게 됩니다. 

 

그런데 이때 사설 IP와 공인 IP를 매핑하는 것을 동적으로 수행합니다. 

 

사용 가능한 공인 IP주소들의 pool을 만들어 두고 어떤 사설 IP주소들이 NAT에의해 주소변환이 되어야 하는지 결정하기위해 매핑 기준을 정의합니다. 

 

이 방식은 공인 IP주소의 갯수가 사설 IP주소의 갯수보다 적을때 주로 사용합니다.

 

 

여기까지 NAT에 대해 디테일 하게 살펴 보았습니다. NAT가 보안에 있어서 얼마나 중요한지 알게 되셨으면 좋겠습니다. 

그러면 AWS 클라우드 환경에서는 NAT를 어떻게 구성해야 할까요??

아래 링크를 참조하여 AWS에서 NAT를 구성하는 방법에 대해 알아 보도록 하겠습니다.

* 참고 URL :

AWS에서 NATAWS에서 NAT구축하기 ( https://kim-dragon.tistory.com/18 )

 

 

반응형