[컴퓨터네트워크] NAT란?

[컴퓨터네트워크] NAT란?

가령 공유기 설정을 한번 만져보신분들은 어디선가 본 듯한 단어입니다.

네트워크 주소 변환(Network Address Translation, 줄여서 NAT)은 IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술을 말합니다.

패킷에 변화가 생기기 때문에 IP나 TCP/UDP의 체크섬(checksum)도 다시 계산되어 재기록해야 합니다.
 NAT를 이용하는 이유는 대게 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP주소를 사용하여 인터넷에 접속하기 위함입니다.
많은 네트워크 관리자들이 NAT를 편리한 기법이라고 보고 널리 사용하고 있으며, NAT가 호스트 간의 통신에 있어서 복잡성을 증가시킬 수 있으므로 네트워크 성능에 영향을 줄 수 있는 것은 당연하다 볼 수 있습니다.

NAT는 IPv4의 주소 부족 문제를 해결하기 위한 방법으로서 고려되었고, 주로 비공인(사실, local) 네트워크 주소를 사용하는 망에서 외부의 공인망(public, 예를 들면 인터넷)과의 통신을 위해서 네트워크 주소를 변환하는 것입니다.

즉, 내부 망에서는 사설 IP주소를 사용하여 통신을 하고, 외부망과의 통신시에는 NAT를 거쳐 공인 IP 주소로 자동 변환됩니다.



NAT를 사용하는 목적

1. 인터넷의 공인 IP주소를 절약할 수 있다는 점
  • 인터넷의 공인 IP주소는 한정되어 있기 때문에 가급적 이를 공유할 수 있도록 하는 것이 필요한데 NAT를 이용하면 사설 IP주소를 사용하면서 이를 공인 IP주소와 상호변환할 수 있도록 하여, 공인 IP주소를 다수가 함께 사용할 수 있도록 함으로써 이를 절약할 수 있는 것입니다.


2. 인터넷이란 공공망과 연결되는 사용자들의 고유한 사설망을 침입자들로부터 보호할 수 있다는 점
  • 공개된 인터넷과 사설망 사이에 방화벽(Firewall)을 설치하여 외부 공격으로부터 사용자의 통신망을 보호하는 기본적인 수단으로 활용할 수 있습니다.
    이때 외부 통신망 즉 인터넷망과 연결하는 장비인 라우터에 NAT를 설정할 경우 라우터는 자신에게 할당된 공인 IP주소만 외부로 알려지게 하고, 내부에서는 사설 IP주소만 사용하도록 하여 필요시에는 이를 서로 변환시켜 줍니다.
    따라서 외부 침입자가 공격하기 위해서는 사설망의 내부 사설 IP주소를 알아야 하기 때문에 공격이 불가능해지므로 내부 네트워크를 보호할 수 있습니다.


NAT 종류

  1. 동적 NAT
    • 사설 IP주소 그룹을 목적지까지 라우팅 가능한 공인 IP 주소 pool로 변환시킨다.
    • 통신이 끝나면 3분 후 변환이 해제된다.
  2. 정적 NAT
    • 사설 주소와 공인 주소를 1:1로 직접 연결할 수 있다.
  3. 폴리시 NAT
    • 패킷의 출발지와 목적지 모두를 반영하여 주소 변환을 수행한다.
  4. 바이패스 NAT
    • NAT에 해당되지 않는 패킷은 그냥 라우팅 된다.
    • 특정 호스트들에 대해서는 NAT기능을 사용하지 않으려면 바이패스 NAT를 사용한다.

댓글

이 블로그의 인기 게시물

[소프트웨어공학] NS(Nassi-Schneiderman) 차트

[운영체제] 파일의 구조(순차 파일, 직접 파일, 색인 순차 파일)

[운영체제] MLQ & MFQ