NAT
▶아키텍처 다이어그램
점선 애니메이션은 데이터 또는 요청의 흐름 방향을 나타냅니다
내부 서버와 PC는 보통 사설 IP를 쓰는데, 이 주소는 인터넷에서 그대로 라우팅되지 않습니다. 모든 장치에 공인 IP를 하나씩 주기에는 IPv4 주소가 부족하고 비용도 큽니다. 사설망을 유지한 채 외부와 통신하려면 경계에서 주소를 바꿔 주는 장치가 필요합니다.
NAT 장비는 내부 호스트가 외부로 나갈 때 출발지 사설 IP와 포트를 공인 IP와 새로운 포트로 바꾸고, 그 매핑을 테이블에 저장합니다. 외부 응답이 돌아오면 그 테이블을 보고 원래 내부 호스트로 다시 바꿔 전달합니다. 그래서 외부에서는 여러 내부 장치가 하나의 공인 주소 뒤에 있는 것처럼 보이지만, 내부 세션은 각각 구분됩니다.
NAT와 방화벽은 둘 다 네트워크 경계에 놓여 함께 보이지만 역할이 다릅니다. NAT는 주소를 바꿔 사설망과 공인망을 이어 주고, 방화벽은 어떤 트래픽을 허용하거나 차단할지 결정합니다. 인터넷에 나가는 길을 만들려면 NAT가 필요하고, 그 길을 누구에게 열지 정하려면 방화벽이 필요합니다.
초기 인터넷은 모든 장치가 공인 주소를 갖는 구조를 전제로 했지만, PC와 모바일이 폭발적으로 늘면서 IPv4 주소 부족이 심각해졌습니다. 동시에 내부망을 외부와 분리해 관리하고 싶은 요구도 커졌습니다. NAT는 이 두 문제를 함께 완화하면서 IPv4 시대를 오래 버티게 한 핵심 기술이 됐습니다.
사설 서브넷의 서버가 외부 저장소나 API에 접속할 때, 가정과 사무실 공유기 뒤의 여러 장치가 인터넷을 함께 쓸 때 적합합니다. 반대로 외부에서 내부 호스트로 직접 들어와야 하는 서비스는 별도 포트 매핑이나 다른 공개 경로 설계가 필요합니다. 주소를 바꾸는 계층이 하나 더 생기므로 장애 분석 시 매핑 상태를 함께 봐야 합니다.
더 깊게 보기
현재 페이지의 개념 설명을 본 뒤 공식 문서로 바로 이동합니다.