IPv4와 IPv6의 차이점 설명

- 10 April 2025
인터넷은 서로 다른 네트워크를 통해 연결된 수십억 대의 기기로 이루어진 네트워크입니다. 모든 기기는 통신을 원활하게 하기 위해 고유하게 식별되어야 합니다..
이는 IP 주소를 통해 이루어집니다. IP는 인터넷 프로토콜(Internet Protocol)의 약자입니다. 인터넷 프로토콜이 무엇인가요?
인터넷 프로토콜은 인터넷에서 데이터가 어떻게 라우팅되고 주소가 지정되는지를 관리합니다.
인터넷 프로토콜의 구성 요소 중 하나는 IP 주소입니다. IP 주소는 인터넷에 연결된 장치에 할당된 고유한 10진수 또는 16진수입니다. 인터넷에 연결된 모든 장치는 IP 주소를 사용하여 서로를 찾고 연결합니다.
IP 주소가 없으면 인터넷에 연결된 장치와 상호 작용할 수 없습니다. 이것이 바로 IP 주소가 필요한 이유입니다.
현재 사용되는 IP 주소는 IPv4와 IPv6, 두 가지 주요 유형입니다. IPv4는 가장 널리 사용되고 오래되었으며 더 발전된 버전이며, IPv6는 더 새롭고 향상된 버전입니다.
당연히 "왜 두 가지 버전이 있는 걸까?", 그리고 더 중요하게는 "두 버전의 차이점은 무엇일까?"라는 의문을 품으셨을 것입니다. 지금부터 이 두 가지 질문에 대한 답을 알아보겠습니다.
IPv4란 무엇인가
IPv4 주소는 32비트 10진수입니다. 이 주소의 형식은 0부터 255까지의 네 개의 숫자로 구성되며, 점으로 구분됩니다. 예를 들어:
192.168.1.1
이는 IPv4 주소입니다.
IPv4의 주소 공간, 즉 생성 가능한 고유한 조합의 수는 약 40억 개입니다. 안타깝게도 스마트폰과 IoT 기기의 확산으로 인터넷에는 40억 개가 넘는 기기가 존재합니다.
결과적으로 IPv4 주소 공간이 완전히 고갈되어 새로운 기기에 고유한 IPv4 주소를 할당할 수 없게 되었습니다. 따라서 기기는 사용 가능한 기존 주소를 재사용해야 하며, NAT와 같은 불완전한 솔루션에 의존해야 합니다. 이러한 현상을 IPv4 소진이라고 합니다.
IPv6란 무엇인가
IPv6 주소는 IPv4의 포화된 주소 공간을 처리하기 위한 또 다른 시도입니다. 이것이 IPv6 주소가 128비트 16진수로 구성되는 이유입니다.
IPv6 주소는 옥텟(octet)이라고 하는 8개의 세그먼트로 구성되며, 각 옥텟은 0000부터 FFFF까지의 16진수 값을 가질 수 있습니다. 각 세그먼트는 세미콜론(;)으로 구분됩니다. 일반적인 IPv6 주소는 다음과 같습니다.
2001:0db8:85a3:0000:0000:8a2e:0370:7334
IPv6에서는 0으로만 구성된 옥텟을 숨길 수 있으며, 옥텟 시작 부분에 있는 모든 0도 숨길 수 있습니다. 따라서 위의 예는 다음과 같이 보일 수 있습니다.
2001:db8:85a3:8a2e:370:7334
IPv6의 주소 공간은 300 데실리언(Decillion)입니다. 이는 천문학적인 숫자의 고유한 IP 주소입니다.
IPv6는 왜 만들어졌나요?
IPv6는 IPv4의 주소 공간 제한 문제를 해결하기 위해 만들어졌습니다. 이 문제를 더 자세히 살펴보겠습니다.
IPv4 주소 공간 딜레마 및 NAT
IPv4는 전체 주소 공간을 사용하고 있습니다. 여러 ISP에 IP 주소를 할당하는 기관(Ripe NCC)은 2019년 11월 IPv4 주소 공간이 공식적으로 고갈되었다고 발표했습니다.
빠르게 줄어드는 주소 공간을 해결하기 위해 NAT(Network Address Translation)라는 기술이 개발되었습니다. 이 기술을 통해 여러 장치가 동일한 IP 주소를 사용할 수 있습니다.
NAT 기술은 1990년대에 만들어졌는데, 당시에는 IPv4 고갈이 이미 예견된 일이었기 때문입니다.
NAT의 사용은 현재 우리가 공용 IP 주소와 사설 IP 주소라고 부르는 것을 만들어냈습니다. 사설 IP 주소는 단일 장치에 할당되지만, 인터넷 전체에서 공유되지 않고 내부 네트워크 내에서만 사용됩니다. 따라서 서로 다른 네트워크에 있는 여러 장치가 동일한 사설 IP 주소를 가질 수 있습니다.
공용 IP 주소는 인터넷 액세스 포인트(가정용 라우터 또는 WiFi 기기)에 할당됩니다. 한 액세스 포인트에 연결된 모든 기기는 해당 액세스 포인트의 공용 IP 주소를 사용하여 나머지 인터넷에 연결합니다.
액세스 포인트는 MAC 주소를 사용하여 트래픽을 올바른 기기로 라우팅하는 방법을 알고 있습니다. 모든 인터넷 리소스 요청과 요청이 발생한 기기를 추적할 수 있으므로, 특정 인터넷 리소스에서 들어오는 모든 트래픽은 자동으로 해당 트래픽이 발생한 기기로 우회됩니다.
온라인 도구를 사용하여 공용 IP 주소를 확인할 수 있습니다. 이러한 도구는 공용 IP 주소를 확인하고 사용자에게 알려줄 수 있습니다. NAT 구성에서 이러한 도구를 사용하면 모든 장치에 동일한 IP 주소가 반환됩니다.
개인 IP를 확인하려면 명령 프롬프트나 터미널에서 ipconfig와 같은 시스템 명령을 사용해야 합니다.
NAT의 문제점
NAT는 해결책이지만, 상당한 결함이 있습니다. IPv6로의 전환을 불가피하게 만드는 몇 가지 단점을 소개합니다..
- 복잡한 구성: NAT를 설정하고 관리하는 것은, 특히 대규모 네트워크의 경우, 복잡할 수 있습니다.
- 직접 통신 중단: NAT는 종단 간 통신을 중단시켜 프로토콜 문제(예: VoIP 또는 P2P 앱)를 발생시킵니다.
- 성능 오버헤드: NAT는 추가 처리를 추가하므로 네트워크 성능이 저하될 수 있습니다.
- 일부 프로토콜의 문제점: IPsec 및 FTP와 같은 프로토콜은 NAT와 잘 작동하려면 추가 절차와 노력이 필요합니다.
- 제한된 공용 IP: 여러 기기에서 단일 공용 IP를 공유하면 동시 연결 수가 제한될 수 있습니다.
- 추적하기 어려운 장치: 여러 장치가 하나의 공용 IP를 공유하기 때문에 어떤 내부 장치가 어떤 작업에 대한 책임이 있는지 추적하기 어렵습니다.
- P2P 애플리케이션 문제: P2P 앱은 NAT 제한으로 인해 연결에 어려움을 겪는 경우가 많습니다.
- 호스팅 서비스의 과제: NAT 뒤의 호스팅 서비스에는 포트 포워딩과 같은 복잡한 구성이 필요합니다.
- 강력한 보안 솔루션이 아닙니다: NAT는 내부 IP를 숨기지만 암호화와 같은 실제 보안 조치를 제공하지 않습니다..
IPv6는 이러한 문제를 어떻게 해결합니까?
앞서 언급했듯이 IPv6의 주소 공간은 300데실리언(Decillion)입니다. 300 뒤에 0이 33개 붙은 숫자입니다. 다음과 같습니다..
300,000,000,000,000,000,000,000,000,000,000
이는 방대한 주소 공간입니다. 실제로 이는 지구상의 모든 기기에 고유한 IP 주소를 제공하고도 충분한 공간을 확보할 수 있는 충분한 공간입니다. 즉, NAT도 필요 없습니다. 따라서 IPv6를 사용하면 NAT 사용의 모든 단점을 피할 수 있습니다.
IPv4와 IPv6의 차이점은 무엇입니까?
이제 IPv4와 IPv6의 기본 사항을 알았으니, 두 가지의 주요 차이점을 살펴보겠습니다.
우리는 이미 형식과 주소 공간의 차이와 같은 것에 대해 알고 있으므로, 여기서는 언급하지 않겠습니다.
헤더 복잡성
다른 모든 네트워킹 프로토콜과 마찬가지로 인터넷 프로토콜(IP)에도 헤더가 있습니다. 헤더는 프로토콜의 페이로드를 처리하는 데 필요한 중요한 정보를 제공합니다.
IPv4에서는 헤더 크기가 훨씬 더 크기 때문에 라우터가 IPv4 패킷을 처리하기 위해 더 많은 작업을 수행해야 합니다. IPv4 헤더의 중요한 구성 요소는 다음과 같습니다.
- 12개의 필드가 있습니다
- 소스 및 목적지 주소를 모두 포함하며, 각 주소는 32비트입니다.
- 각 패킷의 TTL(수명)을 정의합니다.
- 오류 감지를 위한 헤더 체크섬을 포함합니다.
- 다양한 기능 추가 옵션이 있지만, 이로 인해 복잡성이 증가합니다.
반면 IPv6는 헤더가 훨씬 간단합니다.
- 필드가 8개뿐입니다.
- 오류 처리가 OSI 모델의 다른 계층으로 이전되었기 때문에 체크섬 필드가 없습니다.
- 옵션 필드가 없습니다. 더 많은 기능을 추가하려면 확장 헤더를 대신 사용합니다.
- 고정 길이 헤더를 사용합니다.
보안 기능
보안은 이제 인터넷의 필수적인 부분이 되었지만 원래 보안은 사후에 생각나는 것이었습니다.
IPv4는 기본적으로 안전하지 않았습니다. IPsec은 나중에 IP 패킷을 암호화하기 위해 만들어졌습니다. 따라서 IPv4에서는 IPsec을 수동으로 설정해야 합니다.
반면 IPv6에는 암호화와 인증 기능이 내장되어 있어 기본적으로 보안성이 더 높습니다.
브로드캐스팅 및 멀티캐스팅
IPv4 패킷은 네트워크에서 브로드캐스트됩니다. 브로드캐스트란 신호가 네트워크의 모든 장치에 전송된다는 것을 의미하며, 해당 신호가 해당 장치에 전송되었는지 여부와 관계없이 전송됩니다. 해당 패킷과 관련이 없는 장치는 해당 패킷을 무시하고, 다른 장치는 해당 패킷을 사용합니다.
브로드캐스팅은 불필요한 트래픽으로 네트워크를 혼잡하게 만들기 때문에 좋은 해결책이 아닙니다.
반면 IPv6 패킷은 브로드캐스트가 아닌 멀티캐스트 방식입니다. 멀티캐스트는 전체 네트워크가 아닌 특정 장치에만 패킷을 전송한다는 점에서 브로드캐스트와 다릅니다. 네트워크 혼잡을 줄이는 더 효율적인 솔루션입니다.
조각화 처리
패킷 분할은 패킷을 여러 개의 작은 패킷(즉, 조각)으로 나누어 네트워크 세그먼트로 전송할 수 있도록 하는 것을 말합니다.
네트워크 세그먼트가 특정 크기보다 큰 패킷을 처리할 수 없는 경우 조각화가 필요합니다.
IPv4에서는 라우터가 조각화를 처리합니다. 라우터는 조각화를 처리해야 하므로 지연이 발생합니다.
IPv6에서는 송신자가 패킷 분할을 처리합니다. 송신자는 분할되지 않도록 최적의 크기를 갖는 패킷을 생성합니다. 이를 통해 라우터의 처리량이 줄어들어 라우팅이 더욱 효율적이고 빨라집니다.
호환성
IPv4와 IPv6는 서로 호환되지 않습니다. IPv4 네트워크를 통해 IPv6 패킷을 전송할 수 없으며, 그 반대의 경우도 마찬가지입니다.
그러나 IPv4가 훨씬 더 널리 퍼져 있기 때문에 IPv6 트래픽은 IPv4 네트워크에서 작동할 수 있는 방법이 필요합니다.
오늘날 사용되는 두 가지 솔루션은 다음과 같습니다:
- 듀얼 스택 - 장치가 IPv4와 IPv6를 동시에 실행합니다.
- 터널링 – IPv6 트래픽은 IPv4 네트워크를 통해 전송되도록 IPv4 패킷에 래핑됩니다.
IPv4 대 IPv6 요약
특징 |
IPv4 |
IPv6 |
주소 길이 |
32-bit |
128-bit |
주소 형식 |
점소수 (192.168.1.1) |
콜론이 있는 16진수 (2001:db8::1) |
총 주소 |
~4.3 billion |
사실상 무제한 |
헤더 복잡성 |
12개 필드(더 복잡함) |
8 필드(더 간단하고 효율적) |
보안 |
선택적인 IPsec 외부 보안이 필요합니다. |
더욱 강력한 보안을 위해 IPsec이 내장되었습니다. |
방송 |
방송을 사용합니다(효율성이 낮음) |
멀티캐스팅을 사용합니다(더 나은 성능) |
호환성 |
IPv6와 호환되지 않습니다 |
IPv4와 하위 호환되지 않음 |
분열 |
라우터는 조각화를 처리합니다 |
발신자만 패킷을 분할합니다. |
네트워크 구성 |
수동 또는 DHCP가 필요합니다 |
자동 구성을 지원합니다 |
양자 |
아직도 널리 사용되고 있습니다 |
천천히 채택되고 있습니다 |
결론
IPv4와 IPv6의 차이점을 살펴보았습니다. IPv6 도입이 점점 보편화되고 있으므로 이에 대해 알아보는 것이 좋습니다. IPv6 도입의 가장 큰 어려움은 IPv6 기능을 지원하기 위한 네트워크 인프라 업그레이드 비용입니다. 하지만 몇 년 안에 정부와 인터넷 서비스 제공업체(ISP)들이 기존 인프라를 교체하기 위한 작업을 진행함에 따라 이러한 비용은 더 이상 문제가 되지 않을 것입니다. 이것으로 IPv4와 IPv6에 대한 논의를 마칩니다.
관련 블로그

DNS TTL이란 무엇이고 DNS 전파에 어떤 영향을 미치나요?
DNS TTL: 더 빠르거나 더 느린 DNS 전파의 핵심 – 웹사이트 업데이트 및 성능에 미치는 영향 이해
- 26 Sep 2024
