인터넷은 어떻게 주소를 구조화할까 - Hierarchical IP Addressing
2025-06-13
왜 인터넷에는 계층적 주소 구조가 필요한가?
인터넷은 수십억 개의 장치가 연결된 거대한 네트워크다. 이 장치들 각각이 고유한 IP 주소를 가지기 때문에 라우터는 목적지 IP 주소를 기반으로 올바른 경로를 선택해 패킷을 전달해야 한다. 하지만 전 세계의 모든 IP 주소에 대해 일일이 경로를 저장하고 유지하는 것은 기억 공간이나 관리 측면에서 비현실적이다.
이 문제를 해결하기 위해 인터넷은 계층적인 IP 주소 구조(hierarchical addressing)를 채택하고 있다. 즉, IP 주소를 조직, 지역, ISP 등의 논리적 단위로 묶고, 이 단위별로 요약된 경로 정보(route aggregation)만 라우터에 광고하게 한다.
route aggregation
가령, Fly-By-Night ISP라는 지역 인터넷 제공업체가 다음과 같은 여러 조직에 IP 주소 블록을 할당했다고 하자.
- Organization 0 →
200.23.16.0/23
- Organization 1 →
200.23.18.0/23
- Organization 2 →
200.23.20.0/23
- …
- Organization 7 →
200.23.30.0/23
Fly-By-Night ISP는 이 모든 조직의 IP 주소들을 하나의 더 큰 블록으로 묶어 다음과 같이 광고할 수 있다.
‘
200.23.16.0/20
으로 시작하는 주소는 모두 내게 보내줘.’
이 말은 해당 ISP가 관리하는 조직들에 대한 세부 경로 정보를 외부에 드러내지 않고, 하나의 요약된 경로(prefix)만 인터넷 전체에 알려주는 것을 의미한다. 이처럼 여러 개의 세부 네트워크를 하나로 묶는 과정을 route aggregation(경로 집합화)라고 한다.
마찬가지로 더 상위 ISP인 “ISPs-R-Us”는 여러 하위 ISP가 사용하는 IP 대역 전체를 199.31.0.0/16처럼 더 넓은 범위로 요약해 상위 인터넷 백본에 광고할 수 있다.
더 구체적인 경로
계층적 IP 주소 구조는 주소 공간을 집약하고 요약된 경로(prefix)를 통해 라우팅 정보를 간결하게 유지할 수 있게 해준다. 하지만 인터넷은 끊임없이 변화하는 환경이기 때문에 라우팅 체계도 이 변화에 유연하게 대응해야 한다.
예를 들어 어떤 조직(Organization 1)이 기존에는 Fly-By-Night ISP를 통해 인터넷에 연결되어 있었지만, 이제 ISPs-R-Us라는 다른 ISP로 이관되었다고 하자.
이 경우 기존 라우팅 구조는 다음과 같았다.
- Fly-By-Night ISP는 전체 조직들(Organization 0~7)에 대해
200.23.16.0/20
이라는 요약된 경로로 광고하고 있었고, 이 범위에는 Organization 1(200.23.18.0/23)도 포함되어 있었다.
하지만 이제 Organization 1은 ISPs-R-Us를 통해 연결되므로 더 이상 Fly-By-Night ISP에 속하지 않는다. 이에 따라 ISPs-R-Us는 200.23.18.0/23
이라는 더 구체적인 경로를 별도로 광고하게 된다.
‘
199.31.0.0/16
은 내 소속이고, 추가로200.23.18.0/23
도 내 쪽으로 보내줘.’
이처럼 하나의 주소 대역(ex, 200.23.18.0/23
)에 대해 여러 ISP가 서로 다른 범위로 경로를 광고할 수 있고, 이 중 가장 구체적인 경로, 즉 Longest Prefix Match(가장 긴 일치 접두어)를 따르는 것이 인터넷 라우팅의 원칙이다.
IP 주소는 어떻게 할당되는가? 그리고 충분한가?
전 세계의 IP 주소 공간은 무작위로 사용되는 것이 아니라, 글로벌한 관리 체계를 통해 조직적으로 배분된다. 이 관리의 최상단에는 ICANN(Internet Corporation for Assigned Names and Numbers)이 있으며, ICANN은 다음과 같은 역할을 수행한다.
-
IP 주소 공간을 전 세계 5개 지역 인터넷 등록기관(RIR, Regional Internet Registries)에 할당한다.
각 RIR은 소속 국가와 지역의 ISP나 기관에 주소를 재분배한다.
-
DNS 루트 영역을 관리하고, 각 최상위 도메인(TLD, 예: .com, .edu)에 대한 관리 권한을 위임한다.
하지만 인터넷이 급속도로 확산되면서 IPv4의 32비트 주소 공간이 예상보다 훨씬 빠르게 고갈되었다. 실제로 ICANN은 2011년에 IPv4 주소의 마지막 블록을 RIR에 모두 할당했다. 이로써 공식적인 IPv4 주소 배정은 종료되었고, 기존에 남아 있는 할당된 주소만이 재사용되고 있다.
이러한 주소 부족 문제를 해결하기 위한 대응은 두 가지 방향으로 이루어졌다.
- NAT(Network Address Translation): 하나의 공용 IP 주소를 여러 장치가 공유하게 함으로써, IPv4 주소 공간의 활용도를 극대화.
- IPv6의 도입: IPv6는 주소 길이를 128비트로 확장해 사실상 무한에 가까운 주소 공간을 제공한다.
IP 주소 체계를 설계할 당시엔 누구도 지금처럼 전 세계 수십억 대의 장치가 인터넷에 연결될 거라고 예측하지 못했다. 이에 대해 인터넷의 아버지 중 한 명인 Vint Cerf는 훗날 이렇게 회고했다.
도대체 우리가 얼마나 많은 주소 공간이 필요할 줄 알았겠어?
- Vint Cerf (IPv4를 32비트로 설계한 결정을 돌아보며)