
이 글을 읽고 있는 여러분의 컴퓨터나 스마트폰은 인터넷을 통해 이 블로그 서버와 통신하고 있습니다. 우리는 평소 웹 브라우저에 google.com, naver.com, github.com 과 같은 주소를 입력하지만 사실 컴퓨터는 이러한 텍스트를 이해하지 못합니다.
컴퓨터가 이해하는 것은 오직 IP 주소(IP Address)뿐입니다.
내 컴퓨터를 어떻게 찾는걸까?
인터넷에 연결된 모든 장비는 서로를 식별하고 데이터를 주고받기 위한 주소가 필요합니다. 그 주소가 바로 IP Address(Internet Protocol Address)입니다. 즉 IP 주소는 인터넷에 연결된 장비의 고유한 디지털 주소입니다. 우리가 거주하고 있는 집에 주소가 있고 그 주소를 보고 택배기사님이 찾아오는 것처럼 말이죠. 실제로 우리가 인터넷에서 웹사이트를 열거나 동영상을 재생할 때 모든 데이터는 패킷(Packet)이라는 작은 상자에 담겨 이 IP주소를 이정표 삼아 목적지까지 정확하게 배달됩니다.
IP란 무엇인가?
IP는 Internet Protocol의 약자입니다. 대부분의 사람들이 오해하는 부분이 있습니다. IP는 단순히 주소만을 의미하는 것이 아닙니다. 정확하게 말하면 인터넷에서 데이터를 안전하고 정확하게 주고받기 위한 통신 규칙(Protocol)을 의미합니다. 그리고 그 규칙 안에서 각 장비를 구분하기 위해 사용하는 식별 번호가 바로 IP Adress입니다.
- IP(Internet Protocol) : 인터넷에서 통신하는 규칙·규약
- IP Address : 규칙 안에서 기기들을 구별하기 위해 사용하는 주소
하지만 업무나 일상대화에서는 편의상 IP주소를 그냥 IP라고 부르는 경우가 대부분입니다. 예를 들면 192.168.0.206이나 8.8.8.8 같은 숫자가 바로 우리가 말하는 IP주소입니다.
탄생배경
초기 컴퓨터들은 대수가 많지 않아 서로 직접 선을 연결해서 통신했습니다. 하지만 인터넷의 전신인 아파넷(ARPANET)을 시작으로 수많은 컴퓨터가 하나의 거대한 네트워크에 얽히기 시작하면서 한계에 부딪혔습니다. 컴퓨터 제조사마다 통신 방식이 제각각이었고 네트워크 일부가 끊기면 전체 통신이 마비되는 취약점이 있었기 때문입니다. 이 문제를 해결하기 위해 1970년대 기술자 빈트 서프(Vint Cerf)와 밥 칸(Bob Kahn)은 전쟁 같은 비상상황에서도 끊기지 않는 강력한 통신 규칙을 고민했습니다. 이 과정에서 수많은 장비 중 '누구에게 데이터를 보낼 것인지' 명확하게 실별할 방법이 필요해졌습니다.
그래서 네트워크에 연결되는 모든 장비에게 겹치지 않는 고유한 주소를 부여하는 개념이 등장했고 이것이 바로 IP Address입니다. 이들은 데이터를 패킷(Packet)이라는 작은 상자 단위로 쪼갠 뒤, 상자마다 출발지 주소와 목적지 IP 주소를 적어 넣는 방식을 고안했습니다. 우리가 편지를 보낼 때 봉투에 받는 사람의 주소를 적는 것처럼, 인터넷 세상의 데이터 패킷들도 이 IP주소를 이정표 삼아 복잡한 네트워크 경로를 거쳐 목적지까지 정확하게 찾아가게 된 것입니다.
IPv4 & IPv6
현재 주로 사용되는 IP 주소 체계는 두 가지가 있습니다.
- IPv4 (ex:192.168.0.1)
32비트 주소 체계이며 수학적으로 약 43억(2의 32 제곱) 개의 주소를 표현할 수 있습니다. 인터넷 초창기에는 이 정도면 온 세상 컴퓨터를 다 연결하고도 남을 것으로 예상했습니다. 하지만 스마트폰, IoT 기기, 수많은 서버가 폭발적으로 증가하면서 IPv4 주소가 부족해졌습니다. - IPv6 (ex: 2001:db8:85a3::8a2e:370:7334)
주소 부족 문제를 해결하기 위해 등장한 128비트 주소체계입니다. 표현할 수 있는 주소의 개수가 2의 128 제곱 개로 사실상 무한에 가까운 주소를 제공하므로 고갈 걱정이 없습니다. 최신 네트워크 환견과 모바일 망에서는 IPv4와 IPv6가 상호보완하며 사용되고 있습니다.
공인IP & 사설IP
이 개념을 이해하는 것은 네트워크 기초를 다지는 데 매우 중요합니다.
- 공인IP (public IP)
인터넷 세상에서 전 세계를 통틀어 유일한 주소입니다. 젠 세계의 IP주소를 관리하는 기관(IANA)과 인터넷 서비스 제공업체(ISP : KT, SKT, LGU+ 등)를 통해 공식적으로 할당받습니다. 전 세계 어디서든 이 주소로 접근할 수 있으며 외부 공개용 웹 서버 등은 모두 공인IP를 가집니다. - 사설IP (Private IP)
가정이나 회사 등 내부 네트워크(공유기 안쪽)에서 사용하는 주소입니다. 외부 인터넷 공간에서는 이 주소로 직접 접근할 수 없습니다. 공유기가 내부 기기들에게 임의로 나눠주는 주소이기 때문입니다. 내부망 안에서만 겹치지 않으면 되기 때문에 옆집 공유기가 뿌리는 사설 IP와 우리 집 공유기가 할당하는 IP번호가 같아도 아무런 문제가 발생하지 않습니다.- 국제 표준(RFC 1918)으로 지정된 대표적인 사설IP대역
- 10.0.0.0 ~ 10.255.255.255
- 172.16.0.0 ~ 172.31.255.255
- 192.168.0.0 ~ 192.168.255.255
- 국제 표준(RFC 1918)으로 지정된 대표적인 사설IP대역
사설IP를 사용하는 이유는 간단합니다.
IPv4주소는 전 세계적으로 한정되어 있기 때문입니다. 한 사람이 스마트폰, 노트북, TV, 태블릿 등 기기를 여러 대 쓴다고 했을 때 공인IP를 할당한다면 금세 고갈될 것입니다. 그래서 외부와 통신하는 통로는 단 하나의 공인IP만 사용하고, 내부에서는 공유기가 서설 IP를 여러 개 쪼개어 나누어 주는 방식을 사용합니다.
사설IP를 공인IP로 바꾸는 기술 NAT
NAT(Network Address Translation)이란 단어는 뜻 그대로 "네트워크 주소를 변환해 주는 기술"입니다. 주로 내부 공간의 사설IP와 외부 공간의 공인 IP를 서로 매핑하여 변경해 주는 역할을 합니다.
노트북(192.168.0.206) [데이터 전송] → 공유기(NAT 기술로 출발지 주소를 공인 IP 203.xxx.xxx.xxx 로 변경) → 인터넷
외부 인터넷 서버 입장에서는 공유기의 공인IP 주소 하나만 보이자만 실제로는 공유기 뒤에 숨은 여러 기기가 동시에 인터넷을 안전하게 사용할 수 있게 됩니다. 우리가 집에서 와이파이를 사용하는 것이 가능한 이유도 바로 NAT 덕분입니다.
만약 NAT 이 없다면?
사실 위 설명만 보고는 이해하기 힘들지 모릅니다. 저도 정리하면서 왜 NAT이 없으면 안 되는 건데?라는 의문이 들었습니다.
우리가 집에서 사설 IP(192.168.0.206)을 가진 노트북으로 네이버 웹사이트에 접속한다고 가정해 보겠습니다. NAT 기술이 없다면 내 노트북은 사설IP주소를 그대로 데이터 패킷(택배 상자)의 보내는 사람 주소에 적어서 인터넷으로 보낼 것입니다.
- 요청은 어떻게든 감
네이버 서버(공인IP)는 주소가 명확하니 데이터가 도착합니다. - 하지만 응답을 받지 못함
네이버 서버가 화면 데이터를 다 처리하고 다시 내 노트북으로 보내려고 보내는 사람 주소(192.168.0.206)를 확인합니다. - 대혼돈
192.168.0.206이라는 사설 IP는 전 세계 수억 개의 가정과 회사 공유기 내부에서 동시에 중복으로 사용하고 있는 가짜 주소입니다. 네이버 서버입장에서는 전 세계의 수많은 192.168.0.206중 어느 집, 어느 방에 있는 노트북으로 택배를 돌려보내야 할지 알 방법이 없습니다.
즉 데이터는 길을 잃고 증발하며 우리는 응답을 받지 못하게 됩니다.
반송 주소를 적어주는 통제실
공유기의 NAT 기술이 이 과정에서 핵심 역할을 합니다.
- 노트북 : 사설 192.168.0.206
↓ 네이버 열어줘 요청 - 공유기 (NAT 통제실)
- 어라? 이 주소 그대로 나가면 네이버가 답장을 못 주네?
- 편지봉투의 보내는 사람 주소를 우리 집의 유일한 [공인 IP : 203.xxx.xxx.xxx]로 변경합니다.
- 그리고 내 장부(NAT 매핑 테이블)에 기록해 둡니다.(공인 IP로 나간 이 요청은 사실 192.168.0.203 노트북이 보낸 거야)
- 네이버 서버
- 요청에 대한 처리
- 주소가 공인 IP(203.xxx.xxx.xxx)네 여기로 답장 보내야지
- 공유기 (NAT 통제실)
- 답장이 왔군 아까 장부에 적어둔 대로 이건 192.168.0.206 노트북으로 토스
- 노트북
↓ 화면이 올바르게 표출

고정IP & 유동IP
- 고정IP
주소가 변하지 않고 항상 일정하게 유지됩니다. 주로 웹 서버, 기업용 시스템, 가정용 NAS처럼 외부에서 언제나 동일한 주소로 찾아와야 하는 장비에 설정합니다. 주소를 고정해서 쓰려면 통신하에 추가 비용을 내고 전용선을 신청해야 합니다. - 유동IP
인터넷에 연결되거나 공유기가 재부팅될 때마다 비어있는 주소를 임의로 새로 할당받아 수시로 변경될 수 있는 IP입니다. 일반적인 가정용 인터넷 요금제는 자원의 효율적인 관리를 위해 대부분 유동 IP방식을 사용합니다.
집에서 개인 서버를 구축해 보신 분들이 "어느 날 갑자기 외부에서 접속이 안되네?"라고 겪는 현상도 바로 이 유동 IP가 바뀌었기 때문입니다. 이를 해결하기 위해 주소가 바뀌어도 문자로 된 주소를 계속 동기화해 주는 DDNS(Dynamic DNS)나 Cloudflare Tunnel 같은 기술을 활용하곤 합니다.
공인IP 사설IP 고정IP 유동IP...?
사실 저도 현업에 있으면서 처음에 많이 헷갈렸던 부분입니다
- 공인IP vs 사설IP
공간적 범위
공인IP : 전 세계 유일한 우리 집 주소
사설IP : 우리 집 현관문 안에서만 통하는 안방, 큰방, 작은방, 화장실의 구분 - 고정IP vs 유동IP
시간적 변화
고정IP : 매달 돈 내고 쓰는 개인 락커
유동IP: 헬스장 공용 신발장
| 구분 | 고정IP(고정된 주소) | 유동IP(바뀌는 주소) |
| 공인 IP (인터넷 전 세계 유일IP) |
- 공인 고정IP - 기업 웹 서버, 포털 사이트 - 비용을 내고 고정해서 사용 |
- 공인 유동IP - 일반 가정집 모뎀 - 주기적으로 외부 주소가 바뀜 |
| 사설IP (공유기 내부망 전용IP) |
- 사설 고정IP - 회사 프린터, 사내 NAS 등 - 내부 관리를 위해 수동 고정 |
- 사설 유동IP - 스마트폰 와이파이 연결, 노트북 연결 등 - 공유기 (DHCP)가 켤 때마다 임의 할당 |
IP의 한계와 도메인의 등장
IP주소는 숫자로 이루어져 있어 컴퓨터가 처리하기엔 좋지만 사람이 기억하기엔 불편함이 있습니다. 구글에 접속하기 위해 매번 142.250.206.14 같은 숫자를 외워서 타이핑하기엔 불편할 수 있기 때문입니다. 그래서 사람이 기억하기 쉬운 문자로 된 주소인 도메인(Domain, ex: google.com)이 등장하게 되었습니다. 그리고 이 도메인 이름을 컴퓨터가 아는 실제 IP주소로 번역해 주는 전 세계적인 전화번호부 시스템을 DNS(Domain Name System)가 담당하게 됩니다.

마치며
IP주소는 인터넷이라는 거대한 도로망 위에서 기기들이 서로 신호를 주고받기 위한 가장 기초적인 이정표입니다. 공인/사설/공정/유동 IP, IPv4/IPv6 그리고 NAT의 개념을 정확히 이해해 두시면 앞으로 네트워크 환경을 다루거나 클라우드 시스템을 이해할 때 훨씬 수월해지실 겁니다.
이 글이 도움이 되셨으면 좋겠습니다.
감사합니다 :)

'DevOps > Network' 카테고리의 다른 글
| DNS(Domain Name System) (0) | 2026.06.25 |
|---|---|
| 도메인(Domain) (0) | 2026.06.24 |
| Cloudflare (0) | 2026.06.22 |
| 방화벽(Firewall) (0) | 2026.06.10 |
| Network (0) | 2026.06.09 |