정의
인터넷이라는 거대한 도시에서 집이나 회사를 찾아갈 수 있는 대표 도로명 주소가 공인 IP라면, 건물 안에서 가족들이 방을 구분해 쓰는 방 번호가 사설 IP예요. 전 세계에서 겹치지 않는 진짜 인터넷 주소와 공유기 안에서만 쓰는 내부 주소로 나뉘어 있어요.
도로명 주소와 아파트 호수의 차이
택배를 시킬 때 아파트 건물 주소만 적으면 택배 기사님이 우리 집 문 앞까지 올 수 없어요. 반대로 도로명 주소 없이 '101호'라고만 적으면 서울인지 부산인지 알 수 없죠.
컴퓨터 세상도 이와 똑같아요. 세상 모든 컴퓨터가 서로 통신하려면 전 세계에서 단 하나뿐인 고유 주소가 필요한데, 이를 공인 IP(Public IP)라고 불러요. 통신사에서 우리 집에 연결해 주는 하나의 인터넷 회선이 바로 이 공인 IP를 받아요.
하지만 집이나 사무실 안에 있는 노트북, 스마트폰, 태블릿, 스마트 TV마다 진짜 주소를 주면 인터넷 주소가 금방 동나버려요. 그래서 공유기라는 문지기를 두고, 안쪽 기기들끼리는 흔히 192.168로 시작하는 사설 IP(Private IP)를 나눠서 쓰는 거예요. 10이나 172.16~172.31로 시작하는 사설 IP도 있어요.
공유기가 중간에서 주소를 바꿔줘요
스마트폰으로 유튜브 영상을 누르면, 스마트폰은 자신의 사설 IP를 달고 공유기에게 요청을 보내요. 공유기는 이 요청을 받아서 스마트폰의 사설 주소를 지우고 자신의 공인 IP로 옷을 갈아입혀 인터넷 세상으로 보내요.
유튜브 서버 입장에서는 우리 집 스마트폰이 아니라 공유기라는 건물 대표 주소만 보게 돼요. 영상을 보내줄 때도 우리 집 공유기의 공인 IP로 배달하죠. IP 주소만 봐서는 우리 집에 기기가 몇 대나 있는지 알 수 없어요.
데이터가 도착하면 공유기는 자기가 적어둔 장부를 보고 '아, 이건 아까 거실에 있던 스마트폰이 달라고 한 거지'라며 원래 사설 IP로 정확히 전달해요. 이 똑똑한 주소 변환 기술을 네트워크 주소 변환(NAT)이라고 불러요.
조금 더 정확히 말하면
조금 더 정확히 말하면, 사설 IP를 쓰는 컴퓨터는 밖에서 먼저 찾아올 수 없는 일방통행 보호막 안에 있어요. 내가 밖으로 요청해서 받아오는 건 자유롭지만, 외부의 친구가 내 컴퓨터로 직접 접속하려 하면 공유기 문 앞에서 막혀버려요.
외부 인터넷에서는 집 안의 사설 IP라는 방 번호를 직접 찾아갈 방법이 없기 때문이에요. 그래서 집 컴퓨터로 게임 서버를 열거나 개인 웹 서버를 만들려면, 공유기에게 외부 요청을 특정 컴퓨터로 연결해 주는 통로를 지정해 줘야 해요.
이 통로를 뚫어주는 기술을 포트 포워딩(Port Forwarding)이라고 불러요. 결국 사설 IP 체계는 부족한 IP 주소를 아끼는 경제적인 방법이자, 외부에서 먼저 들어오는 접속을 막아 주는 부수적인 보호 효과도 있어요. 다만 NAT는 보안을 위해 만든 장치가 아니라서 방화벽을 대신하지는 못해요.
흔한 오해
우리 집 와이파이에 연결된 모든 기기는 각자 다른 공인 IP를 갖는다.
IPv4 기준으로 같은 공유기에 연결된 스마트폰, 노트북, TV는 모두 단 하나의 공인 IP를 함께 써요. 주소가 넉넉한 IPv6에서는 기기마다 바깥 주소를 받기도 해요. 기기마다 다른 번호는 공유기 안에서만 쓰는 사설 IP예요.
일상에서 만나요
집 안 공유기 관리자 화면에서 자주 보이는 '192.168.0.1'은 공유기 자신의 사설 IP 주소예요.
집 와이파이에 연결된 상태에서 네이버에 '내 아이피'를 검색하면, 내 폰의 사설 IP가 아니라 바깥 인터넷에 보이는 공인 IP(보통 우리 집 공유기의 주소)가 나와요. 모바일 데이터로 검색하면 통신사가 배정한 주소가 나와요.
그러니까 한마디로
공인 IP는 인터넷 세상의 유일한 대표 주소이고, 사설 IP는 공유기 안에서 기기들을 구분하는 내부 방 번호예요.