NAT(Network Address Translation) Server

2021. 11. 1. 16:13Server

NAT란?

Network Address Translation

 네트워크 주소 변환이라고 해석되는 NAT 서버는 사설 IP를 공인 IP로 바꿔서 내보내는 역할을 수행하는 서버이다. 

예를들어 회사 내부에 Host PC가 100대가량있는데 이 모든 PC에게 공인IP 주소를 부여하면 C class의 반정도 되는 양의 IP가 필요하다. 지금처럼 IP가 부족해 IPv6로 넘어가고 있는 추세에 너무 많은 IP를 소비하는 것도 좋지 않거니와, IPS가 제공하는 IP 하나당 가격이 5만원 정도임에 감안할때 거의 500만원이 매달 나가니 엄청난 지출일 것이다. 또한, Host PC모두 공인 대역대에 노출되기 때문에 보안에 취약해지는 문제가 발생한다. 이를 모두 해결해 주는 Server가 NAT Server이다. 

  NAT Server를 기준으로 안과 밖이 구분되며 안을 '내부망', 밖을 '외부망'이라고 부른다. 또는 내부망을 사설 대역대, 외부망을 공인 대역대라고도 부른다. NAT Server를 가장 실생활에 밀접하게 볼 수 있는 것이 바로 가정집에 존재하는 셋톱박스이다. ISP에서 인터넷 상품을 구매하면 셋톱박스가 ISP로부터 공인 IP를 받아온다. 셋톱 박스는 가정집에서 가장 외부망과 가까운곳에 위치한다. 사설망에서는 어떠한 IP, 어떠한 서브넷을 사용하더라도 상관이 없다. 어차피 셋톱 박스를 통해 패킷이 밖으로 나가면서 ISP로부터 받아온 IP로 주소를 변경하고 나가기 때문이다.  하지만 예를 들어, 2명이 동시에 나간다면 어떻게 될까? IP는 한개인데. 또한 2명이 동시에 같은곳에 패킷을 보냈다면? NAT의 작동방식을 안다면 이러한 의문이 해결된다.

 

NAT 방식 

 - PAT(Port Address Translation) 방식

  포트 변환 방식을 통해 NAT를 실행한다. 밑의 Static NAT이나 Dynamic NAT의 경우 사용할 수 있는 공인 IP보다 사설 IP의 수가 더 많다면 모자란 만큼 외부로 나갈 수 없는 호스트가 많아진다. 하지만 포트 변환 방식을 하기 때문에 공인 IP가 하나만 있어도 수많은 사설 IP가 하나의 공인 IP를 가지고 외부로 나갈 수 있게 된다. 'IP:port 번호' 방식으로 패킷에 담기기 때문에 구분이 가능하며, 한 IP당 약 6만개의 포트를 가지고 나갈 수 있으니 전혀 걱정없이 사용하여도 된다. 이 방법이 가장 보편적으로 사용되는 방식이다.

PAT 방식

 - SATIC NAT 방식(1:1)

 사설 IP와 공인 IP를 1:1로 묶어놓은 방식이다. 사실상 IP 고갈문제를 해결해주는 역할로써는 의미가 없고 보안적 의미로 사용된다. 또한 내부의 특정 서버가 하나의 역할이 아니라 다중역할을 수행할때 많이 사용된다. 물론 포트통신이 전제되기 때문에 NAT Server가 중간에서 어떤 포트에 어떤 패킷이 들어가야하는지 정리해주는 정도의 역할만을 수행한다.

 

 - Dynamic NAT 방식(N:N)

 특정 사설 IP가 특정 공인 IP만 사용하도록 관리자가 미리 정해놓은 방식이다. 외부로 서비스를 해야 하는 서버의 경우 대부분 STATIC NAT 방식을 사용한다. 기본적으로 공인 IP에 ICMP 요청을 하면 NAT Server가 반응해준다. 만약 2번째 공인 IP를 내부망의 특정 서버에 NAT Server가 연결시켜 놓으면 외부에서 ICMP를 요청할 시 NAT Server가 그 패킷을 특정 서버에 넘겨준다.

DYNAMIC NAT 방식

 

'Server' 카테고리의 다른 글

SAMBA _ Windows  (0) 2021.11.08
SAMBA & Quota  (0) 2021.11.08
DHCP(Dynamic Host Configuration Protocol)_Linux  (0) 2021.10.28
DHCP(Dynamic Host Configuration Protocol)_Windows  (0) 2021.10.27
DHCP(Dynamic Host Configuration Protocol) Server  (0) 2021.10.27