IPv6가 NAT 문제를 해결하는 방법과 현대 인터넷에 중요한 이유

발행: (2025년 12월 17일 오후 07:54 GMT+9)
18 min read
원문: Dev.to

Source: Dev.to

인터넷은 원래 간단하면서도 강력한 아이디어 위에 구축되었습니다: 네트워크에 연결된 모든 장치는 다른 어떤 장치와도 직접 통신할 수 있어야 한다는 것.
이 개념은 종종 엔드‑투‑엔드 원칙이라고 불리며, 초기 인터넷을 유연하고 혁신적이며 확장하기 쉽게 만들었습니다. 핵심 네트워크를 변경하지 않고도 새로운 애플리케이션이 등장할 수 있었습니다.

시간이 지나면서 이 단순함은 사라졌습니다. 인터넷에 연결된 장치가 급증하면서 IPv4의 근본적인 한계가 드러났고, **네트워크 주소 변환(NAT)**이 우회책으로 도입되었습니다. NAT는 인터넷을 계속 동작하게 했지만, 근본적인 수준에서 연결 방식도 바꾸어 놓았습니다. IPv6는 또 다른 우회책을 추가하는 것이 아니라 주소 체계 자체를 재설계함으로써 이 문제를 제대로 해결하기 위해 만들어졌습니다.

이 글에서는 NAT가 존재하게 된 이유, 현대 네트워킹을 어떻게 복잡하게 만드는지, 그리고 IPv6가 실용적이고 확장 가능한 방식으로 인터넷의 원래 설계를 어떻게 복원하는지를 살펴봅니다.

IPv4 주소 고갈 문제

  • IPv4는 32비트 주소를 사용하며, 약 43억개의 고유 IP 주소를 제공합니다.
  • IPv4가 1980년대 초에 설계될 때, 이 숫자는 거의 무한한 것처럼 느껴졌습니다. 당시에는 컴퓨터가 드물었고, 휴대전화는 인터넷에 연결되지 않았으며, 스마트 디바이스는 존재조차 하지 않았습니다.

오늘날 한 가정에는 스마트폰, 노트북, 스마트 TV, 보안 카메라, 스피커, 조명, 센서 등 모두 인터넷에 연결된 기기가 있을 수 있습니다. 이를 전 세계 수십억 가구와 기업에 곱하면, 사용 가능한 IPv4 주소는 크게 부족합니다.

  • 2011년, 전 세계 IPv4 주소 풀은 공식적으로 고갈되었습니다.
  • 그 이후로 조직들은 종종 높은 가격에 2차 시장에서 IPv4 주소를 구매해야 했습니다.
  • 이러한 부족 현상으로 네트워크는 NAT에 크게 의존하게 되었습니다.

NAT가 무엇이며 왜 도입되었는가

Network Address Translation은 IPv4 고갈에 대한 임시 해결책으로 도입되었습니다. 모든 장치에 공용 IP 주소를 할당하는 대신, NAT는 여러 장치가 하나의 공용 주소를 공유하도록 합니다.

  • 일반 가정용 네트워크에서는 장치들이 192.168.x.x 또는 10.x.x.x와 같은 사설 IP 주소를 사용합니다.
  • 이러한 주소는 공용 인터넷에서 도달할 수 없습니다.
  • 장치가 외부로 트래픽을 보낼 때, 라우터는 사설 주소를 자신의 공용 주소로 교체하고 포트 번호를 사용해 연결을 추적합니다.
  • 응답이 돌아오면 라우터는 이를 올바른 내부 장치로 전달합니다.

이 방식은 기본적인 웹 브라우징에는 잘 작동하지만, 연결 방식에 변화를 줍니다. NAT 뒤에 있는 장치는 외부로의 연결을 쉽게 시작할 수 있지만, 특별한 설정 없이는 외부에서 들어오는 연결을 받기 어렵거나 불가능합니다.

Note: NAT은 절대 영구적인 솔루션이 아니었습니다. IPv6 채택이 보편화될 때까지의 임시 방편이었죠. 수십 년이 지난 지금도 NAT은 여전히 곳곳에 존재합니다.

NAT가 엔드‑투‑엔드 연결을 깨는 방식

가장 큰 문제는 NAT가 인터넷의 원래 엔드‑투‑엔드 모델을 깨뜨린다는 점입니다. NAT 뒤에 있는 장치들은 전역적으로 도달 가능한 주소를 갖지 않으며, 외부 세계에서는 사실상 숨겨진 상태가 됩니다.

실제 문제

  1. 피어‑투‑피어 애플리케이션은 양쪽 모두 들어오는 연결을 받아들여야 하기 때문에 어려움을 겪습니다.
  2. 온라인 게임은 종종 “NAT 유형” 오류를 표시하여 플레이어가 매치를 호스팅하거나 특정 피어에 연결하는 것을 방해합니다.
  3. 음성 및 영상 통화는 NAT 장치를 뚫기 위한 복잡한 기술에 의존하는데, 이가 실패하면 트래픽을 서버를 통해 중계해야 하므로 지연이 증가합니다.
  4. 집에서 서비스를 운영하는 것이 복잡해집니다. 게임 서버를 호스팅하거나 홈 랩에 접근하거나 개발 서비스를 외부에 노출하려면 수동 포트 포워딩이 필요하며, 경우에 따라 전혀 불가능하기도 합니다.

Carrier‑Grade NAT Makes Things Worse

IPv4 부족이 심화되면서 많은 ISP가 Carrier‑Grade NAT (CGN) 를 도입했습니다. 이 환경에서는 고객 라우터조차도 실제 공용 IPv4 주소를 받지 못하고, 대신 또 다른 사설 주소를 할당받아 ISP 네트워크 내부에서 다시 한 번 변환됩니다.

  • Double NAT 는 많은 애플리케이션을 완전히 깨뜨립니다.
  • 포트 포워딩이 더 이상 작동하지 않습니다.
  • 일부 VPN이 실패합니다.
  • 어떠한 인바운드 서비스를 호스팅하는 것이 거의 불가능해집니다.

사용자 입장에서는 인터넷이 더 개방적이기보다는 점점 더 제한적으로 변하고 있다는 느낌을 받습니다.

NAT Traversal은 복잡하고 취약합니다

NAT에 대처하기 위해 개발자들은 STUN, TURN, ICE와 같은 기술을 만들었습니다. 이러한 시스템은 공개 매핑을 발견하거나 직접 연결이 실패할 경우 릴레이 서버로 대체하려고 합니다.

  • 인상적이지만, 복잡성을 추가하고 인프라 비용을 증가시키며 여전히 모든 네트워크 환경에서 신뢰성 있게 작동하지 않습니다.
  • 이것은 영리한 우회책일 뿐, 실제 해결책은 아닙니다.

IPv6가 상황을 완전히 바꾸는 방법

IPv6는 IPv4의 교훈을 바탕으로 설계되었습니다. 128‑bit 주소를 사용하므로 주소 공간이 실용적인 관점에서 사실상 무제한입니다.

  • 모든 장치가 자체 전역 라우팅 주소를 가질 수 있을 만큼 충분한 IPv6 주소가 있으며, 여유도 충분합니다.
  • 주소 부족 문제가 사라졌기 때문에 NAT가 더 이상 필요하지 않습니다.
  • 각 장치를 직접 주소 지정할 수 있어 진정한 엔드‑투‑엔드 연결이 복원됩니다.

일반 가정용 네트워크는 /64 IPv6 프리픽스를 받으며, 이는 약 18 quintillion개의 주소를 제공합니다. 가장 많은 장치를 보유한 스마트 홈이라도 주소가 부족해지지 않을 것입니다.

IPv6에서 엔드‑투‑엔드 연결이 어떻게 보이는가

IPv6에서는 NAT에 의해 만들어진 인위적인 장벽이 사라집니다. 장치들은 방화벽 규칙에 따라 외부 연결을 시작하는 것만큼이나 들어오는 연결도 쉽게 받아들일 수 있습니다.

  • 피어‑투‑피어 애플리케이션이 더 간단하고 신뢰성 있게 됩니다.
  • 게임은 중계 서버 없이 플레이어를 직접 연결할 수 있습니다.
  • 음성 및 영상 통화는 더 낮은 지연 시간으로 직접 경로를 설정할 수 있습니다.
  • 파일 공유가 더 효율적으로 동작합니다.

홈 서버는 간단해집니다. 머신에서 실행되는 서비스는 전 세계에서 접근 가능한 주소를 갖게 됩니다. 포트 포워딩이 필요하지 않으며—방화벽에서 트래픽을 허용하기만 하면 됩니다.

개발자에게, applica (원본 텍스트가 여기서 끊겼습니다; 이어지는 내용은 개발자가 IPv6의 엔드‑투‑엔드 모델에서 얻는 이점에 대해 논의할 것입니다).

IPv6 주소 이해

IPv6 주소는 콜론으로 구분된 8개의 16진수 그룹으로 작성됩니다. 예시:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

주소를 읽기 쉽게 하기 위해 앞의 0은 생략할 수 있고, 연속된 0 그룹은 주소당 한 번 이중 콜론으로 압축할 수 있습니다:

2001:db8:85a3::8a2e:370:7334
  • 처음 64비트는 네트워크를 식별합니다.
  • 마지막 64비트는 해당 네트워크의 장치를 식별합니다.

Automatic Address Configuration with SLAAC

IPv6에는 **Stateless Address Autoconfiguration (SLAAC)**가 포함됩니다. 이 메커니즘을 사용하면 장치가 라우터가 광고하는 정보를 이용해 자체 주소를 자동으로 생성할 수 있습니다. 기본 연결을 위해 전통적인 DHCP 서버가 필요하지 않습니다.

이로 인해 IPv6 네트워크 관리가 더 쉬워지고 진정한 플러그‑앤‑플레이 네트워킹에 가까워집니다.

Source:

NAT 없는 보안

NAT가 보안을 제공한다는 일반적인 오해가 있습니다. 실제로 NAT는 작동 방식의 부수 효과로서 원치 않는 인바운드 트래픽을 차단할 뿐이며, 보안 메커니즘은 아닙니다.

IPv6 네트워크는 대신 적절한 방화벽에 의존합니다. 최신 IPv6 방화벽은 일반적으로 다음과 같이 동작합니다:

  • 외부 연결 및 그에 대한 응답을 허용합니다.
  • 기본적으로 원치 않는 인바운드 트래픽을 차단합니다.
  • 명시적으로 설정된 경우에만 특정 인바운드 연결을 허용합니다.

이러한 접근 방식은 NAT와 동일한 실질적인 보호를 제공하면서도 필요할 때 인바운드 접근을 활성화할 수 있는 능력을 유지합니다.

프라이버시와 IPv6

IPv6 주소는 안정적일 수 있기 때문에, 초기에는 장치 추적에 대한 우려가 제기되었습니다. 이를 해결하기 위해 최신 운영 체제는 프라이버시 확장을 사용하여 외부 연결을 위한 임시의 무작위 주소를 생성합니다. 이러한 주소는 시간이 지남에 따라 변경되어 장기 추적 위험을 줄이면서 IPv6의 이점을 유지합니다.

오늘 바로 확인할 수 있는 실제 혜택

  • Gaming: NAT 유형 문제나 연결 실패가 더 이상 없습니다.
  • Voice & video calls: 더 나은 품질의 직접 연결.
  • Smart home devices: 클라우드 릴레이에 전적으로 의존하지 않고 통신합니다.
  • Mobile networks: 이미 대규모 기기 수에 맞춰 확장성을 유지하기 위해 IPv6에 크게 의존하고 있습니다.

IPv6 채택 현황

IPv6 채택은 꾸준히 증가하고 있습니다. 2025년 현재, 전 세계 사용자의 약 **45 %**가 주요 서비스를 IPv6을 통해 이용하고 있습니다. 특히 모바일 네트워크와 인도, 독일, 프랑스, 미국 등 국가에서 채택이 강합니다.

많은 네트워크가 여전히 듀얼‑스택 모드로 운영되어 IPv4와 IPv6를 모두 지원합니다. IPv4는 당분간 남아 있겠지만, 방향은 명확합니다.

IPv6 활성화 및 테스트 방법

  1. ISP 지원 확인 – 대부분의 최신 제공업체는 IPv6을 지원합니다; 일부는 수동 활성화가 필요할 수 있습니다.
  2. 라우터에서 IPv6 활성화 – 일반적인 구성:
    • DHCPv6: ISP로부터 프리픽스를 얻기 위해 사용합니다.
    • SLAAC: 클라이언트 측 주소 구성을 위해 사용합니다.

할당된 IPv6 주소 확인

ip -6 addr show

IPv6 연결 테스트

ping6 google.com

curl을 이용한 IPv6 테스트

curl -6 https://ipv6.google.com

온라인 도구인 **test‑ipv6.com**도 설정이 올바르게 작동하는지 확인할 수 있습니다.

결론

IPv6는 IPv4가 우회할 수밖에 없었던 핵심 문제를 해결합니다. 주소 부족을 없애면서 NAT의 필요성을 없애고 인터넷의 원래 엔드‑투‑엔드 설계를 복원합니다. 그 결과는 다음과 같습니다:

  • 더 간단한 네트워킹.
  • 실시간 애플리케이션에 대한 향상된 성능.
  • 미래 혁신을 위한 보다 개방된 기반.

전환은 점진적이지만 이미 크게 진행되고 있습니다. 오늘 IPv6를 활성화하고 테스트하는 것은 단순히 미래 대비를 위한 것이 아니라, 인터넷이 원래 설계된 대로 사용하는 것입니다.

참고

Back to Blog

관련 글

더 보기 »

창고 활용에 대한 종합 가이드

소개 창고는 근본적으로 3‑D 박스일 뿐입니다. Utilisation은 실제로 그 박스를 얼마나 사용하고 있는지를 측정하는 지표입니다. While logistics c...