IPv6 주소 유형 완전정복

내 기기에 fe80::로 시작하는 주소와 2로 시작하는 주소가 함께 있는 이유를 RFC 기준으로 유형별 프리픽스, 표기 규칙, 실제 쓰임까지 정리했습니다.

한눈에 보기

IPv6 주소는 128비트이고, 앞자리 비트 패턴(프리픽스)만 보면 어떤 용도의 주소인지 알 수 있습니다. RFC 4291은 IPv6 주소를 유니캐스트, 애니캐스트, 멀티캐스트 세 종류로 나누며 IPv4의 브로드캐스트는 없다고 밝힙니다. 내 기기에 fe80:: 주소와 2로 시작하는 주소가 함께 보이는 것은 정상입니다. 이 글에서는 유형별 프리픽스, 주소 표기와 축약 규칙, 실제로 주소가 어떻게 쓰이는지를 정리합니다.

🔢

IPv6 주소는 왜 여러 종류로 나뉘나

IPv6는 주소 공간이 IPv4보다 압도적으로 넓어진 만큼, 용도에 따라 링크로컬·유니크로컬·글로벌 유니캐스트 등으로 역할을 명확히 나눠 설계되었습니다.

IPv4는 주소가 부족해 사설 IP와 NAT로 어렵게 버텨왔지만, 128비트로 이루어진 IPv6는 사실상 고갈 걱정이 없을 만큼 넓은 주소 공간을 갖습니다. 그 대신 어떤 주소가 인터넷 전체에서 통하는지, 같은 네트워크 안에서만 통하는지를 주소 형식 자체로 구분해 둘 필요가 있어, 앞자리 비트 패턴(프리픽스)에 따라 여러 종류로 나뉘어 있습니다.

🌍

글로벌 유니캐스트 주소 (2000::/3)

인터넷 어디서든 통신 가능한, IPv4의 공인 IP에 해당하는 주소로 2000::/3 대역에서 할당됩니다.

글로벌 유니캐스트 주소는 IPv6 세계에서 IPv4의 공인 IP와 같은 역할을 합니다. 2000::/3 대역(2000::부터 3fff:...까지)에서 할당되며, 인터넷 서비스 제공업체(ISP)가 각 가정이나 기업에 이 대역의 주소를 배정해 전 세계 어디서든 직접 통신할 수 있게 합니다. IPv4와 달리 NAT 없이도 각 기기가 고유한 공인 주소를 가질 수 있을 만큼 대역이 넉넉하다는 점이 특징입니다.

🔒

유니크로컬 주소 (fc00::/7)

IPv4의 사설 IP(192.168.x.x 등)에 해당하는 개념으로, fc00::/7 대역에서 인터넷으로 나가지 않는 내부 전용 통신에 쓰입니다.

유니크로컬 주소(ULA)는 fc00::/7 대역에 속하며, 조직이나 가정 내부에서만 쓰고 인터넷으로 직접 라우팅되지 않는다는 점에서 IPv4의 사설 IP 대역과 비슷한 역할을 합니다. RFC 4193에 따르면 이 대역에서 L 비트가 1인 fd00::/8이 실제로 쓰이며, 그 뒤에 의사 난수로 만든 40비트 Global ID와 16비트 서브넷 ID가 붙습니다. 그래서 서로 다른 두 사설망을 나중에 합치더라도 주소가 겹칠 확률이 매우 낮게 설계되어 있습니다(RFC 4193은 두 Global ID가 충돌할 확률을 약 1.81×10⁻¹²로 추산합니다).

📡

멀티캐스트 주소 (ff00::/8)

하나의 송신자가 특정 그룹에 속한 여러 수신자에게 동시에 데이터를 보낼 때 쓰는 주소로, ff00::/8 대역이 할당되어 있습니다.

RFC 4291에 따르면 IPv6에는 브로드캐스트 주소가 없고, 그 역할을 멀티캐스트가 대신합니다. ff00::/8 대역의 멀티캐스트 주소로 보낸 데이터는 그 그룹에 가입한 기기들에게만 전달되며, "모든 노드"나 "모든 라우터"처럼 미리 정해진 특수 그룹 주소도 여기에 포함됩니다.

🔁

루프백·비명시 주소 (::1, ::)

자기 자신을 가리키는 루프백 주소 ::1과, 아직 주소가 정해지지 않았음을 나타내는 비명시 주소 ::가 특수 용도로 예약되어 있습니다.

루프백 주소 ::1은 IPv4의 127.0.0.1과 같은 역할로, 기기가 자기 자신에게 통신을 보낼 때(로컬 테스트 등) 사용합니다. 비명시 주소 ::(0이 128개 이어진 주소)는 아직 주소가 할당되지 않은 상태를 나타내는 데 쓰이며, 실제 통신의 발신지나 목적지로 지정되지는 않습니다.

🔍

내 기기의 IPv6 주소, 실제로 확인해보면

기기 하나가 링크로컬 주소와 글로벌 유니캐스트 주소를 동시에 여러 개 가지고 있는 것이 정상이며, IPv4처럼 주소 하나만 갖는 경우가 오히려 드뭅니다.

네트워크 설정 화면에서 IPv6 주소를 확인해보면, fe80::로 시작하는 링크로컬 주소 하나와 2000:으로 시작하는 글로벌 유니캐스트 주소가 함께 표시되는 경우가 많습니다. 이는 오류가 아니라 IPv6 설계상 자연스러운 모습으로, 용도가 다른 여러 종류의 주소를 기기 하나가 동시에 갖도록 되어 있기 때문입니다. IPv4와 IPv6가 실제로 어떻게 다른지 더 폭넓게 비교하고 싶다면 관련 가이드를 함께 확인해보는 것을 추천합니다.

유형별 한눈에 비교

유형프리픽스도달 범위근거
글로벌 유니캐스트2000::/3 (2000:: ~ 3fff:...)인터넷 전체IANA 주소 공간 등록부(RFC 4291 참조)
링크 로컬fe80::/10같은 링크 안RFC 4291
유니크 로컬(ULA)fc00::/7 (실제 사용은 L=1인 fd00::/8)조직·사이트 내부RFC 4193
멀티캐스트ff00::/8범위 값(scop)에 따라 다름RFC 4291
루프백 / 비명시::1/128 / ::/128자기 자신 / 주소 미정RFC 4291

참고로 RFC 4291 본문은 위 예약 프리픽스에 해당하지 않는 주소를 글로벌 유니캐스트로 취급한다고 규정하고, 실제로 IANA가 배정하는 범위는 2000::/3으로 제한되어 있다고 IANA 등록부가 설명합니다. 그래서 일상에서 보는 공인 IPv6 주소는 대부분 2 또는 3으로 시작합니다.

주소 읽고 줄이는 법

RFC 4291의 표기 규칙은 두 가지입니다. 각 16비트 그룹의 앞자리 0은 생략할 수 있고, 0만 이어진 그룹들은 "::"로 한 번만 줄일 수 있습니다. "::"를 두 번 쓰면 몇 개씩 줄였는지 알 수 없으므로 올바른 주소가 아닙니다. 아래 값은 node로 검산했습니다.

전체 표기(설명용 예시)축약 표기
2001:0db8:0000:0000:0000:ff00:0042:83292001:db8::ff00:42:8329
fe80:0000:0000:0000:0202:b3ff:fe1e:8329fe80::202:b3ff:fe1e:8329
0000:0000:0000:0000:0000:0000:0000:0001::1
2001::db8::1 (잘못된 표기)"::"를 두 번 사용해 무효

또 하나, 멀티캐스트 중에는 이웃 탐색에 쓰이는 "솔리싯티드 노드(solicited-node)" 주소가 있습니다. RFC 4291에 따라 유니캐스트 주소의 하위 24비트를 ff02::1:ffXX:XXXX 꼴의 XX:XXXX 자리에 넣어 만들므로, 앞의 첫 예시 주소(2001:db8::ff00:42:8329)에 대응하는 값은 ff02::1:ff42:8329입니다.

주소가 실제로 쓰이는 장면

장면 1. 한 기기에 주소가 여러 개 보이는 이유

네트워크 설정에서 IPv6를 확인하면 fe80::으로 시작하는 주소와 2로 시작하는 주소가 함께 나오는 경우가 많습니다. fe80::/10의 링크 로컬 주소는 같은 링크의 이웃과 라우터를 찾는 기초 통신용이고, 2000::/3의 글로벌 유니캐스트는 인터넷 접속용입니다. 여기에 내부 전용으로 fd로 시작하는 유니크 로컬 주소가 더해지는 환경도 있습니다. 용도가 다른 주소를 동시에 갖는 것은 IPv6가 의도한 설계입니다.

장면 2. 두 사설망을 합칠 때의 주소 충돌

IPv4 사설 대역(192.168.x.x 등)은 많은 곳이 같은 값을 쓰기 때문에, 서로 다른 회사의 네트워크를 VPN으로 합칠 때 주소가 겹쳐 곤란한 일이 흔합니다. RFC 4193은 이 문제를 줄이려고 유니크 로컬 주소에 의사 난수 40비트 Global ID를 넣도록 하고, 두 Global ID가 충돌할 확률을 약 1.81×10⁻¹²로 추산합니다. 다만 이는 관리자가 권장 방식대로 무작위로 만든다는 전제의 계산입니다. 쉬운 값(예: fd00::/48)을 임의로 고르면 이 이점이 사라집니다.

가상 예시. 홈 네트워크의 주소 구성 (실제 사건이 아님)

가상의 가정에서 노트북이 fe80::202:b3ff:fe1e:8329(공유기와 통신용), 통신사가 준 접두사에서 받은 2001:db8:... 형태의 글로벌 주소(바깥 인터넷용), 집안 프린터와 통신하는 fd 계열 주소를 함께 가질 수 있습니다. 외부 서버에는 글로벌 주소로 접속하고, 프린터에는 내부 주소로 접속하므로 인터넷 쪽 설정이 바뀌어도 프린터 주소는 유지됩니다. 주소 값은 설명용 예시입니다.

애니캐스트는 어디에 있나

RFC 4291은 애니캐스트를 별도 프리픽스가 아니라 "여러 노드에 같은 유니캐스트 주소를 부여한 것"으로 다룹니다. 가장 가까운(라우팅 기준) 노드 하나에 전달되며, 각 서브넷에서 서브넷 프리픽스에 인터페이스 ID가 모두 0인 서브넷 라우터 애니캐스트 주소를 라우터가 지원해야 합니다. 그래서 주소만 보고는 애니캐스트인지 구별하기 어렵고, 설정으로 정해진다는 점이 유니캐스트·멀티캐스트와 다릅니다.

흔한 오해와 정정

한계와 더 알아볼 점

이 글은 주소 유형의 기본 구조를 다룹니다. 주소 자동 설정 방식(SLAAC, DHCPv6)이나 임시 주소를 통한 개인정보 보호처럼 주소를 어떻게 정하는가는 별도 문서의 영역이라 여기서는 다루지 않았습니다. 또 위 프리픽스는 대표적인 용도 구분이며, 문서용·특수 목적 대역이 따로 더 있습니다. 전체 목록은 IANA의 IPv6 특수 목적 주소 등록부에서 확인할 수 있습니다.

자주 묻는 질문

IPv6에서는 사설 IP를 안 써도 되나요?

주소 공간이 넉넉해 NAT 없이 글로벌 유니캐스트 주소를 바로 쓸 수 있지만, 인터넷으로 노출하고 싶지 않은 내부 전용 통신을 위해 유니크로컬 주소(ULA)를 여전히 활용할 수 있습니다. 다만 IPv4의 사설 IP처럼 필수적인 요소는 아닙니다.

링크로컬 주소로 인터넷에 접속할 수 있나요?

아니요, 링크로컬 주소는 같은 네트워크 구간 안에서만 유효하고 라우터를 넘어가지 않도록 설계되어 있어 인터넷 통신에는 쓰이지 않습니다. 인터넷 접속에는 글로벌 유니캐스트 주소가 사용됩니다.

주소의 "::"는 아무 곳에나 써도 되나요?

연속된 0 그룹을 줄이는 용도로 주소 하나에 한 번만 쓸 수 있습니다. 두 번 쓰면 각각 몇 그룹인지 알 수 없어 무효입니다. 앞자리 0 생략과는 별개의 규칙입니다.

fd로 시작하는 주소와 fc로 시작하는 주소는 뭐가 다른가요?

RFC 4193은 fc00::/7 안에서 L 비트가 1인 경우(fd00::/8)를 로컬에서 할당한 주소로 정의하고, L 비트가 0인 경우는 장차 정의될 수 있다며 현재는 비워 둡니다. 그래서 지금 실제로 쓰이는 유니크 로컬 주소는 fd로 시작합니다.

도메인에 IPv6 주소는 어떻게 연결하나요?

IPv6 주소는 DNS의 AAAA 레코드로 등록합니다. 자세한 레코드 종류는 아래 DNS 가이드를 참고하세요.

이어서 읽을 가이드