IPv4와 IPv6의 차이: 주소·속도·보안 비교와 실측

Advertisement
IPv4 vs IPv6 한눈에 비교
IPv4와 IPv6는 인터넷 프로토콜(Internet Protocol)의 두 버전으로, 모든 기기에 주소를 주고 그 사이에서 패킷을 전달하는 규칙입니다. IPv4는 1983년부터 인터넷을 움직여 왔습니다. IPv6는 IPv4 주소가 바닥나고 있었기 때문에 1990년대에 설계되었고, 오늘날 두 버전은 나란히 쓰이고 있습니다. 비교하면 다음과 같습니다.
| 항목 | IPv4 | IPv6 |
|---|---|---|
| 주소 길이 | 32비트 | 128비트 |
| 주소 개수 | 약 43억 개 (2^32) | 약 3.4 × 10^38개 (2^128) |
| 예시 | 192.0.2.1 | 2001:db8::1 |
| 표기법 | 10진수 4개, 점으로 구분 | 16진수 4자리씩 8개 그룹, 콜론으로 구분 |
| 헤더 크기 | 20~60바이트, 가변 | 40바이트, 고정 |
| 헤더 체크섬 | 있음 | 없음(다른 계층에 맡김) |
| 단편화(fragmentation) | 송신자와 라우터 | 송신자만 |
| 주소 설정 | DHCP 또는 수동 | SLAAC, DHCPv6 또는 수동 |
| 이웃 기기의 MAC 주소 찾기 | ARP | Neighbor Discovery (ICMPv6) |
| 브로드캐스트 | 있음 | 없음, 대신 멀티캐스트 |
| NAT | 거의 모든 곳에서 사용 | 필요 없음 |
| DNS 레코드 | A | AAAA |
| 루프백 | 127.0.0.1 | ::1 |
| 사설 주소 범위 | 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 | fc00::/7 (unique local) |
IPv4란 무엇인가요?
IPv4(Internet Protocol version 4, RFC 791)는 1981년에 발표되었습니다. 주소 길이는 32비트이며 203.0.113.45처럼 0부터 255까지의 숫자 네 개로 표기합니다. 이렇게 하면 4,294,967,296개의 주소가 생기고, 사설·멀티캐스트·예약 범위를 빼면 공인 인터넷에서 쓸 수 있는 주소는 약 37억 개입니다.
이 정도로는 스마트폰, 노트북, 스마트 TV가 넘쳐 나는 세상을 감당할 수 없었습니다. IANA는 2011년 2월에 마지막 남은 주소 블록을 배분했고, ARIN(북미)은 2015년 9월, RIPE NCC(유럽)는 2019년 11월에 주소가 바닥났습니다. 지금은 IPv4 주소가 더 필요한 조직이 대부분 이전(transfer) 시장에서 주소를 사거나 임대합니다.
IPv4로도 인터넷이 계속 성장할 수 있었던 것은 NAT(네트워크 주소 변환) 덕분입니다. 라우터는 공인 IPv4 주소 하나를 집 안의 모든 기기와 나눠 쓰고, 각 기기에는 192.168.1.20 같은 사설 주소를 줍니다. 많은 통신사, 특히 이동통신사는 CGNAT(carrier-grade NAT)라는 두 번째 단계를 더해 공인 주소 하나를 여러 고객이 함께 쓰게 합니다.
Advertisement
IPv6란 무엇인가요?
IPv6(Internet Protocol version 6)는 1995년에 처음 규정되었고(RFC 1883) 1998년에 개정되었으며(RFC 2460), 현재 규격은 2017년의 RFC 8200입니다. 주소 길이는 128비트이며 16진수 4자리씩 8개 그룹으로 표기합니다. 예를 들어 2001:0db8:0000:0000:0000:ff00:0042:8329는 0을 줄이면 2001:db8::ff00:42:8329가 됩니다.
주소 공간이 워낙 커서 집 Wi-Fi 같은 로컬 네트워크 하나가 보통 /64를 씁니다. Wi-Fi 네트워크 하나에 2^64개, 약 1,800경 개의 주소가 주어지는 셈입니다. 모든 기기가 다시 자기만의 공인 주소를 가질 수 있고, NAT가 필요 없습니다.
보급률은 10년 넘게 꾸준히 올라왔습니다. Google의 측정에 따르면 IPv6로 Google에 접속하는 사용자 비율은 주중 약 46%에서 2026년 10월 3일 토요일 51.7% 사이를 오갑니다. 주말에 더 높은 것은 보급률이 앞선 모바일과 가정용 회선을 쓰는 사람이 늘기 때문일 가능성이 큽니다.
글로벌 유니캐스트(
2000::/3): 공인 주소로, 2나 3으로 시작합니다.링크 로컬(
fe80::/10): 모든 IPv6 인터페이스에 하나씩 있으며, 로컬 네트워크 안에서만 작동합니다.고유 로컬(unique local,
fc00::/7, 실제로는fd00::/8): IPv4의 192.168.x.x 같은 사설 주소입니다.멀티캐스트(
ff00::/8): 일대다 전달 방식으로, IPv4의 브로드캐스트를 대신합니다.
IPv4와 IPv6의 핵심 차이점
가장 눈에 띄는 차이는 더 커진 주소지만, IPv6는 네트워크가 매일 작동하는 방식도 바꿨습니다.
더 단순한 헤더. IPv6는 기본 헤더에서 헤더 체크섬과 옵션 필드를 없애고 40바이트 고정 구조를 쓰므로, 라우터가 더 적은 작업으로 패킷을 처리할 수 있습니다.
라우터가 단편화하지 않음. IPv6 라우터는 패킷을 쪼개지 않습니다. 대신 "Packet Too Big" 메시지를 보내고 송신자가 크기를 조정하므로, ICMPv6를 모두 막으면 IPv6 사이트가 깨질 수 있습니다. 모든 IPv6 링크는 최소 1,280바이트 크기의 패킷을 전달할 수 있어야 합니다.
자동 구성. SLAAC를 쓰면 기기가 라우터가 알리는 네트워크 접두사(prefix)로 자기 주소를 직접 만들므로 DHCP 서버가 필요 없습니다. 중앙에서 관리하고 싶은 네트워크를 위해 DHCPv6도 여전히 쓸 수 있습니다.
ARP 대신 Neighbor Discovery. IPv6는 ARP 브로드캐스트 대신 ICMPv6 메시지로 다른 기기의 MAC 주소를 찾습니다.
종단 간(end-to-end) 주소 지정. NAT가 없으면 기기의 주소가 네트워크 안팎에서 같으므로 P2P 앱, 게임, 원격 접속이 간단해집니다. 대신 원치 않는 트래픽을 막는 역할은 방화벽이 맡게 됩니다.
Advertisement
IPv6 주소 읽는 법과 줄이는 법
IPv6 주소를 짧게 쓰는 규칙은 두 가지입니다. 첫째, 각 그룹의 앞자리 0은 생략할 수 있습니다(0db8은 db8이 됩니다). 둘째, 0으로만 이루어진 연속 그룹 한 구간을 ::로 바꿀 수 있습니다. 단, 주소 하나에 한 번만 쓸 수 있습니다. 그러지 않으면 각 ::가 0 몇 개를 뜻하는지 알 수 없기 때문입니다.
전체 표기: 2001:0db8:0000:0000:0000:ff00:0042:8329
앞자리 0 생략: 2001:db8:0:0:0:ff00:42:8329
압축 표기: 2001:db8::ff00:42:8329
루프백: 0000:0000:0000:0000:0000:0000:0000:0001 -> ::1
IPv4 매핑: ::ffff:192.0.2.1 (IPv6 안에 담긴 IPv4 주소)
포트 포함: [2001:db8::1]:443 (대괄호로 콜론을 구분)IPv6가 IPv4보다 빠를까? 직접 테스트했습니다
이론상으로는 IPv6가 NAT를 거치지 않고 헤더도 단순해 더 빠를 수 있습니다. 하지만 실제로는 패킷이 지나가는 경로가 훨씬 더 중요합니다. 2026년 10월 5일 인도의 Jio 광랜 회선에서 대형 듀얼 스택 사이트 8곳에 두 프로토콜로 TCP 연결 시간을 측정했습니다(각 5회 시도의 중앙값, curl -4와 curl -6 비교).
| 사이트 | IPv4 | IPv6 | 더 빠른 쪽 |
|---|---|---|---|
| www.facebook.com | 27 ms | 23 ms | IPv6 |
| www.wikipedia.org | 71 ms | 65 ms | IPv6 |
| www.cloudflare.com | 30 ms | 29 ms | IPv6 (거의 동일) |
| www.netflix.com | 33 ms | 35 ms | IPv4 (거의 동일) |
| www.youtube.com | 34 ms | 37 ms | IPv4 |
| www.google.com | 32 ms | 43 ms | IPv4 |
| www.microsoft.com | 39 ms | 52 ms | IPv4 |
| www.apple.com | 32 ms | 102 ms | IPv4 |
일관된 승자는 없습니다. 대부분의 결과는 몇 밀리초 차이였고, apple.com의 큰 격차는 프로토콜 때문이 아니라 그 순간 IPv6 트래픽이 더 먼 서버로 라우팅되었기 때문일 가능성이 큽니다. 결과는 통신사와 위치에 따라 달라집니다.
이런 차이를 체감하기 어려운 이유는 브라우저가 Happy Eyeballs(RFC 8305)를 쓰기 때문입니다. 브라우저는 먼저 IPv6를 시도하고, 약 250~300 ms 안에 연결되지 않으면 IPv4 연결을 동시에 시도해 먼저 응답하는 쪽을 씁니다. NAT64 뒤에 있는 IPv6 전용 모바일 네트워크에서는 변환 단계를 거치지 않는 IPv6가 유리한 경우가 많습니다.
Advertisement
IPv6가 IPv4보다 더 안전한가요?
자동으로 그렇지는 않습니다. IPv6의 보안 기능으로 자주 언급되는 IPsec은 두 버전 모두에서 작동하며, 현재 표준은 IPv6의 IPsec 지원을 필수가 아닌 권장 사항으로 다룹니다. 보안상의 차이는 대부분 실무적인 것입니다.
NAT가 없으니 방화벽이 중요합니다. IPv4에서는 NAT가 부수 효과로 집 안의 기기를 숨겨 줍니다. IPv6에서는 기기마다 공인 주소가 있으므로 라우터 방화벽이 요청하지 않은 인바운드 트래픽을 막아야 합니다. 대부분의 가정용 라우터는 기본으로 이렇게 하지만 확인해 볼 가치가 있습니다.
프라이버시 주소. 초기 IPv6는 기기의 MAC 주소로 주소를 만들었기 때문에 어디서든 추적이 가능했습니다. 대부분의 최신 시스템은 외부로 나가는 연결에 임시 무작위 주소(RFC 8981)를 씁니다.
스캔이 훨씬 어렵습니다. /64 네트워크에는 1,800경 개의 주소가 있으므로, 공격자가 IPv4 범위를 훑듯이 전체를 스캔할 수 없습니다.
스택이 둘이면 규칙도 둘. 방화벽, VPN, 모니터링 도구가 두 프로토콜을 모두 다뤄야 합니다. 그러지 않으면 IPv6가 아무도 지키지 않는 뒷문이 됩니다.
내 회선에 IPv6가 있는지 확인하는 방법
가장 빠른 방법은 IPv6 테스트입니다. 몇 초 만에 연결이 IPv4 전용인지, IPv6 전용인지, 듀얼 스택인지 알려 줍니다. 명령줄에서는 다음과 같이 확인합니다.
# Windows: 2나 3으로 시작하는 "IPv6 주소"를 찾으세요 (fe80::는 링크 로컬 전용)
ipconfig
ping -6 google.com
# macOS
ifconfig | grep inet6
ping6 google.com
# Linux
ip -6 addr show scope global
ping -6 google.comfe80::로 시작하는 주소만 보인다면 기기에서 IPv6는 켜져 있지만 네트워크가 공인 IPv6 주소를 주지 않는 것입니다. 이는 라우터에서 설정합니다. 많은 통신사가 IPv6를 지원하지만, 라우터의 WAN 또는 IPv6 설정에서 직접 켜도록 남겨 두는 경우가 많습니다.
Advertisement
IPv6를 꺼야 할까요?
대개는 아닙니다. Windows, macOS, Android, iOS 모두 IPv6가 켜진 상태로 출시되며, Microsoft는 IPv6를 끄지 말라고 분명히 권고합니다. Windows는 IPv6가 켜진 상태에서 테스트되며, IPv6가 없으면 일부 구성 요소가 작동하지 않을 수 있기 때문입니다. IPv4가 우선되어야 한다면 Microsoft는 IPv6를 끄는 대신 접두사 정책(prefix policy)을 바꿔 IPv4를 우선하도록 권장합니다. 네트워크에서 IPv6가 고장 났을 때는 Happy Eyeballs가 이미 순식간에 IPv4로 전환해 줍니다.
IPv6를 끄는 것은 일시적인 문제 해결 단계이거나, VPN이 IPv6 트래픽을 보호하지 못할 때만 의미가 있습니다. 그런 경우에도 IPv6 트래픽을 터널링하거나 차단하는 VPN을 쓰는 편이 더 나은 해결책입니다.
IPv4와 IPv6가 함께 작동하는 방식
IPv6로의 전환은 점진적으로 이루어지므로, 네트워크는 두 버전을 모두 작동시키기 위해 몇 가지 기술을 씁니다.
듀얼 스택(dual stack): 기기와 서버가 IPv4와 IPv6를 동시에 운영합니다. 가정용 인터넷에서 가장 흔한 구성입니다.
NAT64와 DNS64: IPv6 전용 네트워크가 변환기를 거쳐 IPv4 전용 사이트에 접속합니다. DNS64는 그런 사이트의 IPv6 주소를 만들어 주며, 주로 잘 알려진
64:ff9b::/96접두사 안의 주소를 씁니다.464XLAT: 많은 이동통신사가 IPv6 전용 네트워크에서 IPv4만 이해하는 앱이 계속 작동하도록 쓰는 방식입니다.
터널: 한 버전만 전달하는 네트워크를 건너기 위해 IPv6 패킷을 IPv4로 감싸서(또는 그 반대로) 보냅니다. 6to4 같은 오래된 자동 터널은 권장되지 않으며, 6to4의 공용 anycast 릴레이는 2015년에 폐기되었습니다(RFC 7526).
웹사이트는 A 레코드 옆에 AAAA 레코드를 게시하는 방식으로 참여합니다. 도메인에 AAAA 레코드가 있는지는 DNS 조회로 확인할 수 있고, 내 사이트가 두 프로토콜로 접속되는지는 IPv6 테스트의 웹사이트 탭에서 확인할 수 있습니다.
내 회선에서 IPv6가 제대로 작동할까요?
DNS Robot의 IPv6 테스트를 실행하면 IPv4 전용, IPv6 전용, 듀얼 스택 중 어디에 해당하는지 몇 초 만에 알 수 있고, 두 공인 주소를 나란히 볼 수 있습니다.
사용해보기 IPv6 테스트Advertisement
자주 묻는 질문
주소 크기입니다. IPv4 주소는 32비트(약 43억 개)이고 IPv6 주소는 128비트(약 3.4 × 10^38개)이므로, 주소 부족 문제와 NAT의 필요성이 사라집니다.