1. Thư viện
  2. IP 주소
  3. 특수 주소

Đã cập nhật 1 tháng trước

여러분의 노트북 주소는 192.168.1.100입니다. 제 노트북도 마찬가지고요. 전 세계 수백만 대의 장치도 똑같습니다. 모두가 같은 주소를 쓰고 있는데, 어떻게 인터넷이 혼돈에 빠지지 않는 걸까요?

이건 버그가 아닙니다. 네트워킹 역사상 가장 영향력 있는 설계 결정 중 하나입니다.

재사용 가능한 주소의 탄생

1996년, 인터넷 설계자들은 문제가 다가오고 있음을 직감했습니다. IPv4에는 43억 개의 주소가 있었는데, 지구상의 모든 장치가 주소를 하나씩 가져야 한다고 상상하기 전까지는 엄청난 숫자처럼 보였습니다. RFC 1918은 획기적인 개념을 내놓았습니다. 서로 다른 네트워크에서 충돌 없이 무한히 재사용할 수 있는 IP 주소였습니다.

세 가지 범위가 사설 주소로 지정되었습니다. 공용 인터넷에서는 절대 라우팅되지 않을 주소들이었습니다. 핵심 통찰은 이것이었습니다. 주소가 로컬 네트워크를 벗어날 수 없다면, 전 세계적으로 고유할 필요가 없다는 것입니다. 모든 가정, 모든 사무실, 모든 카페가 192.168.1.1을 독립적으로 쓸 수 있는 이유는, 그 주소들이 서로 마주칠 일이 없기 때문입니다.

마치 모든 아파트 건물에 101호가 있는 것과 같습니다. 호수는 같은 건물 안에서만 고유하면 됩니다. 도로명 주소가 도시 전체에서의 고유성을 책임집니다.

세 가지 범위

10.0.0.0/8 — 1,670만 개의 주소

세계를 정복할 기세로 성장을 계획하는 기업 네트워크입니다. 대기업들이 이 범위를 선택하는 이유는, 주소가 부족할 걱정 없이 수천 개의 서브넷으로 자유롭게 나눌 수 있기 때문입니다. 해외 지사, 부서, VLAN—주소 공간이 워낙 방대해서 제약 자체를 잊게 됩니다.

172.16.0.0/12 — 100만 개의 주소

클라우드에서 제 역할을 찾은 범위입니다. AWS가 새 VPC의 기본값으로 172.31.0.0/16을 사용하면서 이 범위에 확실히 자리를 잡았습니다. 큰 인프라를 다루기에 충분히 크면서도, 가정 네트워크와 달라 VPN 라우팅 충돌을 피할 수 있습니다. 클라우드 공급자들이 자연스럽게 선택하게 된 이유입니다.

192.168.0.0/16 — 65,536개의 주소

실생활에서 가장 자주 마주치는 범위입니다. 가정용 라우터라면 거의 예외 없이 이 범위를 기본값으로 씁니다. 보통 192.168.1.1 또는 192.168.0.1입니다. 수십 대에서 수백 대의 장치가 있는 네트워크에도 충분합니다. 네트워킹을 일반 대중에게 가져다 준 범위이기도 합니다.

사설 주소가 중요한 이유

RFC 1918 설계자들의 걱정은 현실이 되었습니다. 2011년에 IANA는 IPv4 주소의 마지막 블록을 할당했습니다. 오늘날 공개적으로 라우팅 가능한 주소는 모두 사용 중입니다. 그럼에도 우리는 수백억 대의 장치를 연결했습니다.

사설 주소는 곱셈의 원리로 이것을 가능하게 했습니다. 모든 장치가 고유한 글로벌 주소를 가질 필요 없이, 전체 네트워크가 단 하나의 공인 IP를 공유합니다. 우리 집에만 수십 대의 장치가 있을 수 있습니다. 전화기, 노트북, 스마트 조명, 온도 조절기 모두 ISP가 라우터에 할당한 공인 주소 하나 뒤에 숨어 있습니다.

같은 192.168.1.x 주소가 수백만 가구에서 동시에 쓰입니다. 조율도 필요 없고, 업데이트할 레지스트리도 없고, 요청해야 할 허가도 없습니다.

하지만 못지않게 중요한 두 번째 이점이 있습니다. 바로 격리입니다. 사설 주소는 자연스러운 보안 경계를 만들어 냅니다. 공용 인터넷의 장치들은 아무리 원해도 192.168.1.100에 직접 접근할 수 없습니다. 라우터가 그 트래픽을 차단하도록 설정되어 있기 때문입니다. 내부 네트워크는 설계 자체가 외부에서 보이지 않도록 되어 있습니다.

NAT의 작동 원리

NAT(네트워크 주소 변환)는 사설 IP를 가진 장치들이 인터넷에 접근할 수 있게 해주는 기술입니다. 그 원리는 놀라울 정도로 단순합니다.

192.168.1.100의 노트북이 웹사이트 방문 요청을 보냅니다. 요청은 라우터에 도달하는데, 라우터는 두 가지 얼굴을 가지고 있습니다. 내부 네트워크를 바라보는 사설 주소(192.168.1.1)와 인터넷을 바라보는 공인 주소입니다.

패킷이 통과하는 순간, 라우터는 출발지 주소를 사설 IP에서 공인 IP로 바꿔 씁니다. 그리고 어떤 내부 장치가 어떤 포트를 통해 어떤 요청을 보냈는지 기록하는 연결 테이블을 유지합니다.

웹사이트에서 응답이 돌아오면, 라우터의 공인 IP가 수신 주소로 되어 있습니다. 라우터는 테이블을 확인하고, 이 패킷이 노트북의 것임을 파악하고, 목적지를 192.168.1.100으로 다시 변환한 뒤 전달합니다.

웹사이트 입장에서는 라우터와 대화하는 것입니다. 노트북이 존재한다는 사실을 알 수 없습니다. 노트북 입장에서는 웹사이트와 직접 통신하는 것처럼 느껴집니다. 변환은 완전히 투명하게 이루어집니다.

집에 있는 장치 50대가 모두 하나의 공인 IP로 인터넷에 접근할 수 있는 이유가 바로 이것입니다. 라우터는 모든 연결을 추적하면서 양방향으로 주소를 실시간으로 바꿔 씁니다.

범위 선택하기

결정은 생각보다 간단합니다.

가정 네트워크 (100대 미만): 192.168.1.x를 쓰고 더 이상 고민하지 마세요. 라우터가 기대하는 범위이고, 장치들이 기대하는 범위이며, 모든 가이드가 전제하는 범위입니다. 세 번째 옥텟을 바꾸고 싶다면(192.168.2.x, 192.168.50.x) 그래도 됩니다. 하지만 기본값으로도 충분합니다.

중간 규모 기업 (100~1,000대): 직원이 원격 근무를 한다면 172.16.x.x를 고려해 보세요. 일반적인 가정 네트워크와 다른 범위를 쓰면 VPN 라우팅 충돌을 막을 수 있습니다. 집에서 사무실 네트워크로 VPN을 연결할 때, 주소 공간이 다르면 컴퓨터가 10.1.1.50의 프린터가 집 것인지 사무실 것인지 정확히 구분할 수 있습니다.

대기업 또는 대규모 성장 계획: 10.x.x.x로 시작하세요. 주소 공간이 워낙 커서 고갈 걱정 없이 자유롭게 서브넷을 구성할 수 있습니다. 지사, 부서, 네트워크 구역 등 필요에 따라 마음껏 나누세요. 처음부터 너무 작게 계획했다는 이유로 주소 체계를 처음부터 다시 설계할 필요가 없습니다.

VPN 라우팅 함정: 가정 네트워크와 사무실 네트워크가 모두 192.168.1.x를 쓴다면, VPN 연결 시 라우팅 테이블이 모호해집니다. 192.168.1.10이 내 옆의 프린터인지 먼 나라의 서버인지 컴퓨터가 알 수 없게 되는 겁니다. 기업이 10.x.x.x를 선호하는 이유가 바로 이것입니다. 가정 네트워크와 충돌하지 않는다는 보장이 있기 때문입니다.

사설 IP 주소 자주 묻는 질문

서로 다른 네트워크의 두 장치가 같은 사설 IP 주소를 가질 수 있나요?

그렇습니다. 그리고 이건 지금 이 순간에도 끊임없이 일어나고 있습니다. 전 세계 수백만 대의 장치가 지금 192.168.1.1을 사용 중입니다. 사설 주소는 로컬 네트워크를 벗어나지 않기 때문에 이것이 가능합니다. 경계에서 NAT가 공인 주소로 변환해 주기 때문에 인터넷에서 충돌이 발생하지 않습니다.

왜 네트워크 외부에서 192.168.x.x 장치에 접근할 수 없나요?

라우터는 사설 IP 범위를 목적지로 하는 트래픽을 차단하도록 설정되어 있습니다. 누군가의 내부 IP를 알고 있다 해도, 192.168.x.x, 10.x.x.x, 또는 172.16.x.x를 목적지로 하는 패킷은 인터넷 라우터에서 버려집니다. 이것은 보안 기능입니다. 내부 네트워크는 설계상 외부에서 보이지 않도록 되어 있습니다.

내부 네트워크에 공인 IP 주소 범위를 사용하면 어떻게 되나요?

해당 주소를 실제로 소유한 곳에 대한 접근이 끊깁니다. 예를 들어 내부적으로 8.8.8.x(Google DNS 범위)를 쓰면, 장치들이 Google DNS 서버에 접근하지 못하게 됩니다. 내부 네트워크로 라우팅되어 버리기 때문입니다. 내부 주소 지정에는 반드시 RFC 1918 사설 범위를 사용하세요.

172.16.x.x는 클라우드 인프라 전용인가요?

그렇지는 않습니다. 하지만 AWS가 새 VPC의 기본값을 172.31.0.0/16으로 설정하면서 널리 알려지게 되었습니다. 실용적인 장점은 일반 가정 네트워크(192.168.x.x)와 일반 기업 네트워크(10.x.x.x) 모두와 겹치지 않는다는 것입니다. 환경을 연결할 때 VPN 충돌을 줄일 수 있습니다.

참고 자료

Trang này có hữu ích không?

😔
🤨
😃