🚀 NAT란 무엇인가? 쉽게 이해하는 공인 IP·사설 IP 개념 총정리
👉 인터넷을 사용하다 보면 한 번쯤 듣는 용어
👉 “NAT”, “공인 IP”, “사설 IP”
하지만 실제로는 개념이 헷갈리는 경우가 많습니다.
이 글에서는
✔ NAT가 무엇인지
✔ NAT IP가 따로 있는 이유
✔ 웹서버(WEB), WAS와 어떤 관계인지
👉 완전히 쉽게 설명합니다.
📌 이런 분들에게 추천합니다
- 서버/웹 개발을 처음 접한 분
- 집 인터넷 구조가 궁금한 분
- “내 IP가 왜 두 개지?” 궁금했던 분
1️⃣ NAT란 무엇인가? (초간단 설명)
👉 NAT(Network Address Translation)
✔ 쉽게 말하면:
👉 “IP 주소를 바꿔주는 번역기”
✔ 비유로 이해하기
회사 대표번호 (02-1234-5678) → 내부 직원들 연결
👉 외부에서는 하나의 번호만 보이지만
👉 내부에서는 여러 사람이 사용
✔ NAT도 동일합니다
외부 인터넷 → 공인 IP 1개 → 내부 여러 기기
👉 이때 IP를 바꿔주는 것이 NAT
2️⃣ 공인 IP vs 사설 IP
✔ 공인 IP (Public IP)
- 인터넷에서 직접 보이는 주소
- 예: 123.123.123.10
✔ 사설 IP (Private IP)
내부에서만 사용하는 주소
예:
- 192.168.x.x
- 10.x.x.x
✔ 핵심 차이
| 구분 | 공인 IP | 사설 IP |
|---|---|---|
| 사용 위치 | 인터넷 | 내부 네트워크 |
| 외부 접근 | 가능 | 불가능 |
| 개수 | 제한 | 무제한 |
3️⃣ NAT IP가 따로 있는 이유
👉 많은 사람들이 헷갈리는 부분입니다.
✔ 상황 예시
내 PC IP: 192.168.0.5
외부에서 보이는 IP: 123.123.123.10
👉 “왜 IP가 두 개지?”
✔ 답
👉 NAT 때문입니다
- 내부 IP → 사설 IP
- 외부 IP → NAT가 변환한 공인 IP
👉 그래서:
✔ “NAT IP가 따로 있다”
👉 = 외부에서 보이는 IP
4️⃣ NAT는 장비인가요?
👉 이 질문 많이 나옵니다.
✔ 결론
👉 NAT는 장비가 아니라 ‘기능’입니다
✔ 하지만 실제로는 이렇게 존재
- 집 → 공유기 (NAT 기능 포함)
- 회사 → 방화벽 장비
- 서버 → 리눅스 설정
- 클라우드 → NAT 서비스
👉 즉:
✔ 기능은 NAT
✔ 그 기능을 수행하는 것은 장비/소프트웨어
5️⃣ WEB / WAS / NAT 관계 쉽게 이해
이건 개발/서버 구조에서 중요합니다.
✔ 전체 흐름
사용자 → 인터넷 → NAT → 웹서버 → WAS → DB
✔ 각 역할
✔ NAT
- 외부 요청을 내부로 전달
- 보안 역할
✔ WEB 서버
대표적으로
- Nginx
- Apache HTTP Server
👉 역할:
- HTML, CSS 같은 화면 처리
- 요청을 WAS로 전달
✔ WAS 서버
대표적으로
- Apache Tomcat
👉 역할:
- 로그인 처리
- DB 조회
- 실제 로직 수행
6️⃣ 실제 인터넷 접속 과정
👉 우리가 사이트 접속할 때 실제 흐름
1. 사용자가 사이트 접속
2. 공인 IP(NAT)로 연결
3. NAT → 웹서버 전달
4. 웹서버 → WAS 호출
5. 결과 반환
👉 핵심:
✔ 우리는 항상 NAT를 거쳐서 서버에 접속합니다
7️⃣ NAT가 꼭 필요한 이유
✔ 1. IP 부족 해결
- 공인 IP는 부족함
- NAT 덕분에 하나로 여러 기기 사용 가능
✔ 2. 보안
- 내부 서버 직접 노출 안됨
✔ 3. 비용 절감
- 공인 IP 여러 개 필요 없음
8️⃣ 실생활 예시
✔ 집 인터넷
인터넷 → 공유기(NAT) → 스마트폰 / PC / TV
👉 모든 기기가 하나의 공인 IP 사용
✔ 회사 서버
인터넷 → 방화벽(NAT) → WEB → WAS → DB
🔥 결론 (핵심 요약)
👉 NAT란 무엇인가?
✔ 내부 IP를 외부 IP로 변환하는 기술
✔ 외부와 내부를 연결하는 “중간 통로”
✔ 인터넷에서 반드시 필요한 구조
✔ 한 줄 정리
👉 NAT = 인터넷과 내부 네트워크를 연결하는 IP 번역기
'개발 > 네트워크' 카테고리의 다른 글
| PKIX Path Building Failed 오류란 무엇인가? Java 개발자가 가장 많이 만나는 SSL 오류 완전정복 (0) | 2026.06.07 |
|---|---|
| SSL 인증서란 무엇인가? 개발자와 일반인 모두 이해하는 쉬운 설명 (0) | 2026.06.06 |
| SSL/TLS란 무엇인가? 개발자가 꼭 알아야 할 HTTPS 통신 원리 (0) | 2026.06.04 |
| SSL/TLS란 무엇인가? HTTPS 통신 원리와 개발자가 알아야 할 오류 해결 방법 (0) | 2026.06.01 |
| Nginx란 무엇인가? 톰캣과 차이까지 쉽게 설명드립니다 (0) | 2026.04.24 |
| WEB, WAS, NAT 관계 한 번에 이해하기 (0) | 2026.04.16 |
| [네트워크 기초] 네트워크 기초 명령어(ping, tracert등) (0) | 2016.04.07 |