NAT (Network Address Translation)

2024. 6. 7. 13:28Linux*security/Network

반응형


NAT(Network Address Translation)는 하나의 공인 IP 주소를 통해 여러 사설 IP 주소를 인터넷에 연결하여 공인 IP 주소의 부족 문제를 해결하고 하나의 공인 IP 주소로 여러 장치가 인터넷에 연결될 수 있다. 내부 네트워크의 사설 IP 주소를 외부 네트워크(인터넷)의 공인 IP 주소로 변환하여 사설 네트워크의 장치들이 공인 IP 주소를 통해 인터넷에 접근할 수 있게 한다. 외부에서 내부 네트워크의 구조와 IP 주소를 숨겨 보안성을 높이고 외부 장치는 NAT를 통해 내부 네트워크의 실제 IP 주소를 알 수 없다.

□ NAT의 유형

1. 정적 NAT (Static NAT):
   - 하나의 사설 IP 주소를 하나의 공인 IP 주소와 1:1로 매핑한다. 주로 특정 서버나 장치가 항상 동일한 공인 IP 주소로 접근될 필요가 있을 때 사용된다.

2. 동적 NAT (Dynamic NAT):
   - 내부 네트워크의 사설 IP 주소를 외부 네트워크의 공인 IP 주소 풀(pool) 중에서 하나로 동적으로 매핑한다. 내부 장치가 인터넷에 접근할 때마다 사용 가능한 공인 IP 주소를 할당받다.

3. PAT (Port Address Translation) / 오버로딩:
   - 다수의 사설 IP 주소를 하나의 공인 IP 주소로 매핑하고, 포트 번호를 사용하여 트래픽을 구분한다. 가장 널리 사용되는 NAT 유형으로, 다수의 장치가 하나의 공인 IP 주소를 통해 인터넷에 접근할 수 있게 한다.

□ 동작 원리

- 내부 네트워크의 장치가 인터넷으로 패킷을 보낼 때, NAT 장치는 이 패킷의 출발 IP 주소를 사설 IP 주소에서 공인 IP 주소로 변환하고 포트 번호를 추가로 사용하여 트래픽을 구분한다. 예를 들어, 192.168.1.10:12345에서 나가는 패킷이 203.0.113.5:54321로 변환된다.
 

- 외부 네트워크에서 들어오는 응답 패킷은 NAT 장치에 도달하면, 이 패킷의 목적지 IP 주소를 공인 IP 주소에서 사설 IP 주소로 변환하고 포트 번호를 사용하여 어느 내부 장치로 패킷을 전달할지 결정한다. 예를 들어, 203.0.113.5:54321으로 들어온 패킷이 192.168.1.10:12345로 변환된다.

 

■ eg.

 

 내부 장치가 웹사이트에 접근할 때:
   - 내부 장치(예: 192.168.1.2)가 웹사이트(예: 198.51.100.5)에 접근하려고 할 때, NAT는 192.168.1.2의 사설 IP 주소를 공인 IP 주소(예: 203.0.113.5)로 변환한다.

   - 웹사이트에서 응답이 돌아올 때, NAT는 이 응답 패킷의 목적지 IP 주소를 203.0.113.5에서 192.168.1.2로 변환하여 내부 장치로 전달한다.

 여러 장치가 동시에 인터넷에 접근할 때:
   - 여러 내부 장치가 동시에 인터넷에 접근할 경우, NAT는 각 장치의 패킷에 대해 고유한 포트 번호를 사용하여 트래픽을 구분한다.
   - 예를 들어, 192.168.1.2와 192.168.1.3이 동시에 인터넷에 접근하면, NAT는 각각의 출발 패킷에 대해 서로 다른 포트 번호를 할당한다(예: 192.168.1.2:12345는 203.0.113.5:54321로, 192.168.1.3:12346은 203.0.113.5:54322로 변환).


반응형

'Linux*security > Network' 카테고리의 다른 글

비밀키(대칭키), 공유키(비대칭, 공개키)  (0) 2024.06.26
IPv6  (0) 2024.06.07
IPv4  (0) 2024.06.07
네트워트 장비 종류, 특징  (0) 2024.06.07
대칭키 & 비대칭키의 이해  (0) 2024.04.10