IP 주소와 서브넷
카페에서 노트북을 열면 몇 초 만에 인터넷이 된다. 그 사이 노트북은 “나는 몇 번지인가?”를 물어 주소를 빌리고, 옆자리 공유기의 하드웨어 주소를 알아내고, 공유기는 노트북의 주소를 바깥용 주소로 바꿔 적는다. 전 세계 수백억 대의 기기가 서로를 찾는 비결은 32비트(또는 128비트)짜리 숫자 하나, IP 주소다. 이 장에서는 그 숫자를 직접 쪼개고 계산해 본다.
- IP가 “최선형·비연결” 배달을 하는 이유와 IPv4 헤더의 주요 필드를 설명한다.
- IPv4 주소를 이진수로 읽고, 네트워크 부분과 호스트 부분을 나눈다.
- 프리픽스 길이로 서브넷 마스크·네트워크 주소·브로드캐스트·호스트 수를 계산한다.
- 하나의 네트워크를 여러 서브넷으로 나누고 VLSM으로 낭비를 줄인다.
- DHCP가 주소를 빌려주는 과정과 ARP가 MAC 주소를 알아내는 과정을 따라간다.
- NAT가 공인 IP 하나를 여러 기기가 나눠 쓰게 하는 원리와 부작용을 이해한다.
- IPv4 고갈의 역사와 IPv6의 표기법·자동 설정·보급 현황을 안다.
IP의 일: 최선을 다해, 한 상자씩
3장에서 본 계층 구조에서 IP(Internet Protocol)는 네트워크 계층을 맡는다. 할 일은 하나뿐이다. 목적지 주소가 적힌 상자(패킷)를 지구 어디든 그 주소의 기기까지 가져다 놓는 것. 이더넷(6장)이 같은 건물 안의 우편실이라면, IP는 도시와 나라를 넘나드는 택배 회사다.
IP의 배달 방식에는 두 가지 큰 특징이 있다.
- 최선형 전달(best-effort delivery): 최선을 다하지만 아무것도 약속하지 않는다. 상자가 사라질 수도, 순서가 바뀔 수도, 드물게는 두 번 도착할 수도 있다. 혼잡한 라우터는 넘치는 패킷을 그냥 버린다. 분실을 챙기는 일은 위층의 TCP(9장)에게 맡긴다.
- 비연결형(connectionless): 보내기 전에 상대와 약속(연결 설정)을 하지 않는다. 패킷마다 완전한 주소가 적혀 있고, 라우터는 각 패킷을 서로 모르는 남처럼 따로 처리한다. 같은 대화의 패킷도 다른 길로 갈 수 있다.
약속을 적게 한 덕분에 IP는 단순하고, 단순한 덕분에 구리선·광섬유·전파·위성 어떤 링크 위에서도 돌아간다. “인터넷의 허리”라 불리는 이유다. 아래는 IPv4 패킷 맨 앞에 붙는 20바이트 헤더, 즉 택배 상자의 송장이다.
물류 허브의 직원은 상자를 열어 보지 않는다. 송장의 받는 주소만 보고 어느 트럭에 실을지 정한다. 상자가 너무 많아 창고가 넘치면 일부를 그냥 버린다(최선형). 같은 사람이 보낸 상자 열 개도 각각 다른 트럭을 탈 수 있다(비연결형). 대신 송장에는 “유효 기한(TTL)” 도장이 있어 허브를 지날 때마다 하나씩 줄고, 0이 되면 폐기한다. 주소가 잘못돼 영원히 도는 상자를 막는 장치다.
32비트 주소: 네트워크 부분과 호스트 부분
IPv4 주소는 32개의 비트, 즉 0과 1이 32개 늘어선 숫자다. 사람이 읽기 쉽게 8비트(1바이트)씩 끊어 각각 0~255의 십진수로 쓰고 점으로 잇는다. 이를 점 표기(dotted decimal)라 한다. 192.168.10.37은 사실 11000000 10101000 00001010 00100101이다. 가능한 주소는 232 ≈ 43억 개다.
주소의 앞쪽은 어느 네트워크인가, 뒤쪽은 그 네트워크 안의 어느 기기인가를 뜻한다. 도로명 주소의 “테헤란로 123”이 동네와 건물을 가리키고, 뒤의 호수가 집을 가리키는 것과 같다. 라우터는 앞부분(네트워크)만 보고 길을 정하므로, 전 세계 기기 수십억 개를 일일이 외울 필요 없이 네트워크 수십만~백만 개 정도만 알면 된다(8장).
클래스에서 CIDR로
1981년 처음 정한 규칙은 경계선을 8비트 단위로 고정한 클래스 방식이었다. 첫 숫자만 보면 클래스가 정해졌다.
| 클래스 | 첫 바이트 | 네트워크/호스트 | 네트워크 수 | 네트워크당 호스트 |
|---|---|---|---|---|
| A | 0~127 | 8 / 24비트 | 128 | 약 1,677만 |
| B | 128~191 | 16 / 16비트 | 16,384 | 65,534 |
| C | 192~223 | 24 / 8비트 | 약 209만 | 254 |
| D | 224~239 | 멀티캐스트(여러 수신자에게 한꺼번에) | ||
| E | 240~255 | 실험·예약용 | ||
문제는 크기가 세 가지뿐이라는 것이었다. 직원 2,000명 회사는 C(254대)로는 모자라 B(65,534대)를 받아야 했고, 6만 개 넘는 주소가 놀았다. 1990년대 초 B 클래스가 빠르게 바닥나자 1993년 CIDR(Classless Inter-Domain Routing)이 도입됐다. 경계선을 아무 비트에나 둘 수 있게 하고, 주소 뒤에 /22처럼 네트워크 비트 수를 붙인다. 이 숫자를 프리픽스 길이(prefix length)라 한다. 2,000명 회사는 이제 /21(2,046대)을 받으면 된다. 오늘날 클래스라는 말은 역사 용어로만 남았다.
서브넷 계산기
프리픽스 길이를 비트 모양으로 쓴 것이 서브넷 마스크(subnet mask)다. 네트워크 비트 자리는 1, 호스트 비트 자리는 0. /24는 1이 24개, 0이 8개이므로 255.255.255.0이다. 기기는 주소와 마스크를 비트별 AND(둘 다 1일 때만 1) 하여 자기 네트워크 주소를 얻고, 상대 주소도 같은 방식으로 계산해 “같은 동네인가?”를 판단한다. 같으면 직접(ARP로 MAC을 찾아) 보내고, 다르면 기본 게이트웨이(공유기)에게 맡긴다.
한 서브넷(subnet)에서 두 주소는 기기에게 줄 수 없다. 호스트 비트가 전부 0인 주소는 네트워크 자체의 이름(네트워크 주소)이고, 전부 1인 주소는 “이 네트워크의 모두에게”라는 뜻의 브로드캐스트 주소(broadcast address)다. 그래서 호스트 비트가 h개면 쓸 수 있는 주소는 2h − 2개다.
서브넷 계산기: 프리픽스 길이를 움직여 보세요
/24 네트워크(사용 가능 254대)의 프리픽스를 /25로 1만 늘리면, 서브넷 하나에서 쓸 수 있는 호스트 수는?
서브넷 계산기의 슬라이더를 24에서 25로 옮겨 확인하자.
서브넷 나누기와 VLSM
회사가 192.168.10.0/24 하나를 받았다고 하자. 영업팀, 개발팀, 손님 Wi-Fi를 한 네트워크에 몰아 두면 브로드캐스트가 모두에게 퍼지고, 보안 정책도 나누기 어렵다. 그래서 프리픽스를 늘려 작은 서브넷 여러 개로 쪼갠다. 비트 하나를 네트워크 쪽으로 빌릴 때마다 서브넷 수는 두 배, 크기는 절반이 된다.
그런데 팀마다 필요한 크기가 다르다. 모든 서브넷을 같은 크기로 자르면 라우터 두 대를 잇는 링크(주소 2개 필요)에도 62개짜리 블록을 줘야 한다. VLSM(Variable Length Subnet Mask)은 서브넷마다 프리픽스 길이를 다르게 해서 필요한 만큼만 떼어 준다. 큰 블록부터 차례로 배치하면 블록 경계가 저절로 맞는다.
/24 하나를 서브넷으로 나누기
192.168.10.0~.255)다. 블록 양 끝의 빨간 선은 기기에게 줄 수 없는 네트워크·브로드캐스트 주소. 같은 크기로 잘게 나눌수록 이 “세금”이 늘어 전체 사용 가능 호스트가 줄어든다(1개 → 254대, 64개 → 128대). VLSM 모드에서는 필요 기기 수 + 2를 담는 가장 작은 2의 거듭제곱 크기를 큰 것부터 배치한다. 영업팀을 200대로 늘려 공간이 모자라는 순간을 확인해 보자.특별한 주소들
43억 개의 주소가 모두 인터넷에서 쓰이는 것은 아니다. 몇 덩어리는 특별한 용도로 예약되어 있다. 가장 중요한 것은 사설 IP 주소(private address)다. 회사나 집 안에서 누구나 마음대로 쓸 수 있지만 인터넷으로는 나갈 수 없는 주소로, 1996년 RFC 1918이 정했다. 전 세계 수억 가정이 똑같이 192.168.0.1을 공유기 주소로 쓰는데도 충돌이 없는 이유다. 바깥으로 나갈 때는 NAT(아래)가 공인 주소로 바꿔 준다.
| 범위 | 이름 | 쓰임 |
|---|---|---|
10.0.0.0/8 | 사설 (큰 것) | 대기업·데이터센터·클라우드 내부망. 약 1,677만 개 |
172.16.0.0/12 | 사설 (중간) | 172.16.0.0~172.31.255.255. 약 105만 개. 172.32는 공인이니 주의 |
192.168.0.0/16 | 사설 (작은 것) | 집 공유기의 기본값(192.168.0.x, 192.168.1.x 등) |
127.0.0.0/8 | 루프백(loopback) | “나 자신”. 127.0.0.1로 보낸 패킷은 밖으로 나가지 않고 같은 컴퓨터로 돌아온다(localhost) |
169.254.0.0/16 | 링크 로컬 주소(link-local) | DHCP 서버를 못 찾았을 때 기기가 스스로 붙이는 주소. 이 주소가 보이면 “주소 배정 실패” 신호 |
100.64.0.0/10 | 공유 주소 (CGNAT) | 통신사가 가입자에게 주는 “두 번째 사설 주소”(RFC 6598) |
224.0.0.0/4 | 멀티캐스트 | 한 번 보내 여러 수신자가 받는 그룹 주소(IPTV, 라우팅 프로토콜 등) |
255.255.255.255 | 제한 브로드캐스트 | “지금 이 LAN의 모두에게”. 라우터를 넘지 않는다. DHCP가 쓴다 |
0.0.0.0 | 지정 안 됨 | 아직 주소가 없는 기기의 출발지 주소. 라우팅 표에서는 “모든 곳”(기본 경로, 8장) |
192.0.2.0/24 등 | 문서용 | 책과 예제에만 쓰는 주소(198.51.100.0/24, 203.0.113.0/24도). 이 장의 예시들도 이것을 쓴다 |
주소 빌리기(DHCP)와 이웃 찾기(ARP)
노트북을 처음 보는 Wi-Fi에 연결하면 주소, 마스크, 공유기 주소, DNS 서버 주소를 손으로 넣은 적이 없는데도 인터넷이 된다. DHCP(Dynamic Host Configuration Protocol) 덕분이다. 공유기 안의 DHCP 서버가 주소 묶음(예: 192.168.0.2~254)을 관리하며, 새로 온 기기에게 하나를 일정 기간 임대해 준다. 주고받는 메시지 네 개의 머리글자를 따서 DORA라 부른다.
DHCP DORA: 주소를 빌리는 네 번의 대화
주소를 얻은 노트북이 같은 LAN의 프린터 192.168.0.40에게 패킷을 보내려 한다. 그런데 이더넷과 Wi-Fi(6장, 13장)는 IP 주소가 아니라 MAC 주소로 프레임을 배달한다. 프린터의 MAC 주소는 어떻게 알까? ARP(Address Resolution Protocol)가 답이다. LAN 전체에 “192.168.0.40 쓰는 분, MAC 주소 알려 주세요” 하고 브로드캐스트로 외치면, 해당 기기만 자기 MAC을 적어 답한다. 답은 ARP 캐시에 잠시 저장해 두고 다음부터는 묻지 않는다.
목적지가 LAN 바깥(예: 8.8.8.8)이면? 노트북은 서브넷 마스크로 계산해 “다른 동네”임을 알고, 8.8.8.8이 아니라 기본 게이트웨이(공유기)의 MAC을 묻는다. IP 헤더의 목적지는 8.8.8.8 그대로 두고, 이더넷 프레임의 목적지만 공유기 MAC으로 적어 넘긴다. 택배 송장의 최종 주소는 그대로인데, 일단 동네 집하장 트럭에 싣는 것이다.
ARP: “이 IP 쓰는 분 누구세요?”
| 노트북의 ARP 캐시: IP 주소 | MAC 주소 | 남은 시간 |
|---|
ARP에는 인증이 없다. 누군가 묻지도 않았는데 “공유기 IP는 내 MAC이야”라는 응답을 계속 뿌리면 이웃들의 캐시가 오염되어 모든 트래픽이 그 사람을 거쳐 가게 된다(ARP 스푸핑). 공용 Wi-Fi에서 HTTPS 같은 암호화(22장)가 중요한 이유다.
NAT: 대표 번호 하나로 온 가족이
집에는 휴대폰, 노트북, TV, 스피커까지 기기가 열 대 넘게 있지만, 통신사가 집에 주는 공인 IPv4 주소는 보통 하나다. 공유기의 NAT(Network Address Translation)가 이 문제를 푼다. 집 안 기기가 밖으로 패킷을 보내면, 공유기가 출발지 주소를 자기 공인 주소로 바꿔 적는다. 기기 여러 대가 동시에 나가도 구분할 수 있도록 출발지 포트 번호까지 바꾸고, 그 대응을 변환표에 적어 둔다. 포트까지 바꾸는 이 방식을 정확히는 PAT(Port Address Translation) 또는 NAPT라 하며, 집 공유기의 NAT는 사실상 모두 이것이다.
직원 100명이 바깥에 전화를 걸면 상대방 화면에는 모두 회사 대표 번호가 뜬다. 교환대는 “지금 거래처 A와 통화 중인 선은 내선 37번”이라고 적어 두었다가 상대가 말하면 37번으로 돌려준다. 그런데 바깥 사람이 대표 번호로 먼저 전화해 “아무나 바꿔 주세요” 하면? 교환대는 누구에게 연결할지 모른다. 미리 “고객 상담 문의는 내선 200번”이라고 정해 두지 않았다면.
공유기의 NAT 변환표 채우기
| 집 안 주소:포트 | 공인 주소:포트 | 상대방 | 남은 시간 |
|---|
포트 포워딩을 끈 상태에서, 바깥의 친구가 우리 집 공인 IP의 8080번 포트로 먼저 접속하면 어떻게 될까?
NAT 시뮬레이터에서 포트 포워딩을 끄고 ‘바깥에서 먼저 접속’을 눌러 보자.
NAT의 부작용
- 서버를 열기 어렵다. 바깥에서 먼저 들어오는 연결은 막히므로 집 NAS, 게임 호스팅, CCTV를 바깥에서 보려면 포트 포워딩(port forwarding) 규칙을 손으로 넣거나, 공유기가 지원하면 앱이 UPnP로 자동 요청한다.
- P2P가 복잡해진다. 둘 다 NAT 뒤에 있는 두 사람이 영상 통화를 하려면 “구멍 뚫기”(STUN) 기법을 쓰거나, 실패하면 중계 서버(TURN)를 거쳐야 한다(24장).
- 종단 간 원칙이 깨진다. IP 주소가 기기를 끝까지 가리키지 못하고 중간 장비가 헤더를 고친다. 패킷 안에 IP 주소를 적는 오래된 프로토콜(FTP 등)은 공유기가 내용까지 고쳐야 한다.
- 이중 NAT, CGNAT. 주소가 더 모자라자 통신사는 가입자 공유기에게조차
100.64.x.x같은 공유 주소를 주고, 통신사 장비에서 한 번 더 NAT를 한다. 이를 CGNAT(Carrier-Grade NAT)라 한다. 공인 IP 하나를 수십~수백 가입자가 나눠 쓰므로 포트 포워딩이 아예 불가능하고, 한 사람의 잘못으로 같은 IP 전체가 차단당하기도 한다. 휴대폰의 LTE·5G 데이터는 대부분 CGNAT 뒤에 있다.
IPv4 고갈과 IPv6
43억 개는 1981년에는 무한해 보였다. 하지만 PC, 휴대폰, 사물인터넷이 쏟아지며 바닥이 드러났다. 전 세계 주소를 총괄하는 IANA는 2011년 2월 마지막 /8 블록 다섯 개를 다섯 지역 인터넷 레지스트리(RIR)에 하나씩 나눠 주고 창고를 비웠다. 아시아·태평양의 APNIC은 두 달 뒤 사실상 소진됐고, 유럽(RIPE NCC), 남미(LACNIC), 북미(ARIN)가 뒤따랐다. 지금 IPv4 주소는 회사끼리 사고파는 “중고 자산”이 되어 주소 하나에 수십 달러 수준에 거래된다.
근본 해결책은 주소를 늘리는 것이다. IPv6는 주소를 128비트로 키웠다. 2128 ≈ 3.4×1038개, 지구 표면 1제곱미터마다 약 6.7×1023개를 줄 수 있는 양이다. 집 하나의 LAN에 기본으로 주는 /64 서브넷 하나만 해도 1.8×1019개, IPv4 인터넷 전체의 40억 배가 넘는다. 주소가 넉넉하니 NAT가 필요 없고 모든 기기가 전 세계에서 유일한 주소를 가질 수 있다. 헤더도 고정 40바이트로 단순해졌고, 라우터가 패킷을 쪼개는 단편화(아래)와 헤더 체크섬을 없앴다.
IPv6 표기와 축약
128비트를 점과 십진수로 쓰면 16칸이나 되므로, IPv6는 16비트씩 8묶음으로 끊어 16진수로 쓰고 콜론으로 잇는다. 그래도 길어서 두 가지 축약 규칙이 있다. ① 각 묶음 앞의 0은 생략할 수 있다(0db8 → db8, 0000 → 0). ② 0으로만 된 묶음이 연달아 있으면 한 번만 ::로 줄일 수 있다(두 번 쓰면 각각 몇 묶음인지 알 수 없다). 표준 권장 표기(RFC 5952)는 소문자, 가장 긴 0 묶음 덩어리를 줄이고, 길이가 같으면 앞쪽을 줄이며, 0 묶음 하나만은 ::로 줄이지 않는다.
IPv6 전체 주소 ↔ 축약형 변환기
::가 된다. 축약형(2001:db8::1)을 입력하면 거꾸로 전체형을 복원한다. 인터페이스 ID 가운데에 ff:fe가 끼어 있으면 MAC 주소로 만든 EUI-64 방식이다. 이 변환기는 점 표기 IPv4를 끼운 형식(::ffff:1.2.3.4)은 다루지 않는다.주소를 스스로 만드는 SLAAC
IPv6 기기는 DHCP 서버 없이도 주소를 만든다. 이를 SLAAC(Stateless Address Autoconfiguration)이라 한다. 라우터가 주기적으로(또는 요청받으면) “이 링크의 프리픽스는 2001:db8:1:2::/64”라는 라우터 광고(RA)를 보내면, 기기는 뒤 64비트 인터페이스 ID를 스스로 정해 붙인다. 예전에는 MAC 주소로 만들었지만(EUI-64) 어디서 접속하든 같은 꼬리가 남아 추적에 악용될 수 있어, 요즘 OS는 무작위 값을 쓰고 주기적으로 바꾼다. 같은 주소를 이미 누가 쓰는지는 NDP(IPv6판 ARP)로 물어 확인한다. ARP와 브로드캐스트는 IPv6에서 사라지고 멀티캐스트 기반 NDP가 그 역할을 맡는다.
이사는 아직 진행 중
IPv6는 IPv4와 호환되지 않는다. 그래서 지금은 기기와 망이 두 주소를 함께 쓰는 듀얼 스택(dual stack)으로 과도기를 보낸다. 웹사이트가 두 주소를 다 가지면 브라우저는 IPv6를 먼저 시도하고, 느리면 재빨리 IPv4로 바꾼다(Happy Eyeballs). 구글이 집계하는 자사 서비스 접속 중 IPv6 비율은 2025년 무렵 약 45~50% 수준이다. 나라와 통신사마다 차이가 커서 인도·프랑스·독일 등은 절반을 크게 넘고, IPv4 주소를 일찍 넉넉히 받은 곳은 상대적으로 낮다. 휴대폰 망은 IPv6 전용으로 운영하고 IPv4 사이트만 변환 장비(NAT64)로 연결하는 통신사도 많다.
단편화, MTU, 그리고 TTL
링크마다 한 번에 실을 수 있는 최대 크기, MTU가 다르다(이더넷은 보통 1,500바이트, 데이터센터의 점보 프레임은 9,000바이트, 6장). 큰 MTU 구간에서 온 4,000바이트 패킷이 1,500바이트 구간을 만나면? IPv4 라우터는 패킷을 여러 조각으로 자른다. 이를 단편화(fragmentation)라 한다. 조각마다 IP 헤더를 새로 붙이고, 같은 식별자와 “원래 패킷의 몇 번째 바이트부터인가(조각 오프셋)”, “뒤에 조각이 더 있다(MF 플래그)”를 적는다. 다시 맞추는 일은 최종 목적지만 한다.
단편화는 성능과 보안에 모두 골칫거리라 지금은 피하는 것이 원칙이다. 보내는 쪽이 “쪼개지 마시오(DF)” 표시를 하고 보내면, 너무 큰 패킷을 만난 라우터는 버리면서 ICMP 오류로 “이 구간 MTU는 1,500”이라고 알려 준다. 보내는 쪽은 크기를 줄여 다시 보낸다. 이를 경로 MTU 탐색(PMTUD)이라 한다. 방화벽이 이 ICMP를 막으면 작은 웹 페이지는 열리는데 큰 페이지만 멈추는 기묘한 장애가 생긴다(23장).
헤더의 TTL(Time To Live)은 라우터를 하나 지날 때마다 1씩 줄고, 0이 되면 그 라우터가 패킷을 버리고 출발지에 ICMP “시간 초과”를 알린다. 이름은 “생존 시간”이지만 실제로는 남은 홉 수다. 라우팅 설정 실수로 라우터 두 대가 서로에게 패킷을 넘기는 고리가 생겨도, 패킷이 영원히 돌며 링크를 가득 채우는 일을 막는다. 보통 64나 128로 시작한다. 8장의 traceroute는 이 TTL을 일부러 1, 2, 3…으로 보내 경로를 알아내는 영리한 도구다.
핵심 정리
- IP는 최선형·비연결형 배달을 한다. 패킷마다 출발지·목적지 주소, TTL, 프로토콜 번호가 적힌 20바이트 헤더를 단다.
- IPv4 주소는 32비트(약 43억 개). 앞쪽은 네트워크, 뒤쪽은 호스트이며 경계는 프리픽스 길이(/n) 또는 서브넷 마스크로 정한다(CIDR).
- 네트워크 주소 = IP AND 마스크, 브로드캐스트 = 호스트 비트 모두 1. 사용 가능 호스트 = 232−n − 2.
- 서브넷을 나누면 비트 하나마다 개수는 두 배, 크기는 절반. VLSM은 필요한 크기만큼 다른 길이로 떼어 낭비를 줄인다.
- 사설 주소(10/8, 172.16/12, 192.168/16)는 안에서만 쓰고, NAT(PAT)가 공인 IP 하나와 포트로 바꿔 내보낸다. 바깥에서 먼저 오는 연결은 막혀 포트 포워딩이 필요하다.
- DHCP는 Discover·Offer·Request·ACK로 주소를 임대하고, ARP는 브로드캐스트로 IP에 해당하는 MAC을 묻는다. LAN 바깥 목적지는 게이트웨이의 MAC을 묻는다.
- IPv4는 2011년 IANA에서 바닥났다. IPv6는 128비트(3.4×1038), 콜론 16진 표기와
::축약, SLAAC 자동 설정을 쓰며 듀얼 스택으로 보급 중이다(구글 기준 약 절반). - MTU보다 큰 IPv4 패킷은 단편화된다. TTL은 홉마다 1씩 줄어 라우팅 고리에서 패킷이 영원히 도는 것을 막는다.
확인 퀴즈
192.168.1.130/26이 속한 네트워크의 네트워크 주소는?
다음 중 사설 IP 주소가 아닌 것은?
DHCP Discover 메시지를 브로드캐스트(255.255.255.255)로 보내는 이유는?
192.168.0.23/24인 노트북이 8.8.8.8로 패킷을 보낼 때, ARP로 MAC 주소를 묻는 대상은?
집 공유기(PAT)가 기기 세 대의 연결을 공인 IP 하나로 구분하는 방법은?
2001:0db8:0000:0000:0000:0000:0000:0001의 올바른 축약 표기는?