개발서/서버의 기본

2-12 NAT와 NAPT

nohesitation 2020. 7. 4. 09:39

NAT(Network Address Translation)과 NAPT(Network Address Port Translation)은,

기업이나 가정의 LAN에서 사용하는 프라이빗 IP 주소를, 인터넷에서 사용하는 글로벌 IP 주소로 변환하는 기술이다.

이 NAT와 NAPT의 실행처리는 LAN과 인터넷을 연결하는 라우터나 방화벽에서 일어난다.

 

# NAT는 IP주소를 1대1로 변환

NAT는 프라이빗 IP 주소와 글로벌 IP 주소를 1대1로 변환한다.

LAN으로부터 인터넷에 접속할 때, 송신원 IP 주소를 변환한다.

반대로 인터넷으로부터 LAN으로 접속할 때는 수신처의 IP 주소를 변환한다.

 

# NAPT는 IP주소와 포트 번호를 변환

NAPT는 프라이빗 IP 주소와 글로벌 IP 주소를 N대1로 변환한다.

LAN으로부터 인터넷에 접속할 경우, 송신원 IP 주소 뿐만 아니라 송신원 포트 번호도 변환하여, N대1의 변환을 실현하는 것이다.

 

LAN의 클라이언트가 인터넷의 서버와 통신하는 경우를 예로 들면 아래와 같다.

① 라우터는 클라이언트로부터 받은 패킷의 송신원 IP 주소를 프라이빗 IP 주소로부터 글로벌 IP주소로 변환한다.

이와 동시에 송신원 포트 번호도 변환하여, 그 변환정보를 기억해둔 뒤에 서버로 송신한다.

② 서버는 클라이언트로부터 패킷을 수신하여, 그 처리결과를 클라이언트에게 돌려보낸다.

③ 라우터는 수신한 패킷의 수신처 IP 주소와 포트 번호를 ①에서 만들어 기억해놓은 변환정보를 바탕으로 다시 원래대로 변환하여 클라이언트에게 전달한다.

 

 

'개발서 > 서버의 기본' 카테고리의 다른 글

3-02 on-premises와 cloud  (1) 2020.07.08
3-01 어떤 서버를 이용할까  (0) 2020.07.07
2-11 포트 번호의 사용법  (0) 2020.07.03
2-10 TCP와 UDP  (0) 2020.07.02
2-09 ARP  (0) 2020.07.01