IPv4를 보완하는 IPv6
IPv6가 등장하게 된 것은 90년대 인터넷의 대중적인 사용으로 인한 IPv4 주소가 부족해진 것에 있다.
IPv4는 2의 32승, 약 42억 개의 주소를 제공할 수 있지만 그 중 E 클래스에 해당하는 240부터 255로 시작하는 실험용 주소, 사적 IP를 위한 주소를 제외하고 남는 IP 주소는 제한적이다.
이러한 IPv4의 제약을 해결하기 위해 내부 망에서는 사적 IP 주소를 사용하다 공인망에 접속할 때는 공인 IP 주소를 사용하는 NAT, 할당된 IP 주소를 다시 쪼개는 subnetting, IP 주소의 자동 분배와 수거를 담당하는 DHCP 등의 방법을 사용했지만 2000년대에 들어설 무렵엔 이미 IPv4의 주소 부족이 임박했었다.
이로 인해 IPv4의 32-bit를 확장한 128-bit의 IPv6 가 개발되었다.
IPv6의 가장 큰 특징은 확장된 주소 공간으로, 이를 통해 전 세계에서 고유한 IP 주소 Global Address 를 배정하는 것이 가능해졌고, 더 나아가 여러 주소를 하나의 주소로 집합하는 Aggregation과 경로 또는 연결 문제가 발생해도 문제 없는 Multi-homing 기능 또한 수월해졌다.
다음으로 복잡했던 IPv4의 IP 헤더 구조를 개선하여 시간과 비용이 소모되던 라우팅 성능을 한껏 개선시켰고, 기존에 사용 중이던 IPv4 주소 체계와의 호환을 위해 추가적인 기능 또한 제공하고 있다.
사실은 존재했던 IPv5.. 컴퓨터 네트워크를 처음 접할 때부터 IPv4와 IPv6 주소 체계에 대해 각인되다 보니 '그럼 IPv5는?'이라는 질문을 떠올리지 못했다.. 주입식 교육의 폐해
IPv5는 QoS Quality of Service 제공을 위한 실험용 프로토콜로써 Internet Stream Protocol (ISP) 이었다. 풀어 설명하자면, 인터넷에서 디지털 사운드나 멀티미디어 데이터 등 실시간 데이터를 전송하기 위해 자신만의 네트워크 자원을 가지는 것이다 .
IPv6의 특징 (1) : Global Address
앞서 말했듯, IPv6의 가장 큰 특징은 확장된 주소 체계이다. 세계에서 고유한 나만의 IP 주소인 Global Address를 가질 수 있고, 전 세계 어느 네트워크에서든 이 고유 네트워크에 접속할 수 있다 Global Reachability. 이는 더 나아가 종단 간 통신 수행 시 주소 변환 없이 도착이 가능하다는 것 End-to-End Reachability 또한 의미한다.
또한, Global Address 사용을 통해 계층화된 주소 배정이 가능해진다 Address Hierarchy. 예를 들어, IPv6 주소를 배정한다고 할 때 128 bit 중 앞의 64 bit를 끊어 각각 상용 주소 여부 / 대륙 구분 / ISP 구분 / 기관 구분 / LAN 주소 구분에 사용하는 것이다.
그리고 이러한 체계적인 주소의 구분으로 여러 트래픽을 하나로 묶는 것 Aggregation 까지 가능해졌다.
IPv6의 특징 (2) : Auto Configuration
IPv6는 stateful auto configuration과 stateless auto configuration을 모두 지원하는데, 이 중 stateless auto configuration은 IPv6만 지원하는 기능이다.
Stateful Auto Configuration는 특정 서버에서 테이블을 관리하면서 IP 주소를 분배하는 방식인 반면, Stateless Auto Configuration은 특정 서버 없이도 라우터에 접속만 하면 자동으로 호스트 IP 주소를 배정하는 방식이다.
IPv6는 stateless auto configuration을 사용하는 것이 기본이지만 그렇다고 stateful auto configuration을 사용하지 않는 것은 아니다. stateless auto configuration은 기본적인 정보를 받는데 사용하고, stateful auto configuration은 DNS 서버 정보 같이 추가적인 정보를 취득하기 위해 사용한다.
네트워크에 연결된 PC가 stateless auto configuration 최초 설정 시, PC가 연결된 라우터에 주소를 요구하면 라우터는 IPv6 주소 128 bit 중 앞의 64 bit에 해당하는 Prefix를 제공한다. 이를 제공 받은 PC는 자신의 MAC 주소 48 bit를 64 bit로 확장한 뒤 Prefix와 합쳐 128 bit의 주소를 설정하게 되는 것이다.
IPv6 주소는 EUI-64 형식을 사용하여 MAC 주소로부터 확장되어 생성될 수 있다.
이 과정에서 MAC 주소를 변형하여 IPv6 호스트 부분을 구성하는 방법은 다음과 같다.
* MAC 주소 `0016:9D43:F2E0`이 존재한다고 가정하자.
1. MAC 주소 분할 및 확장
- MAC 주소를 두 부분으로 나누고, 사이에 `FF:FE`를 삽입한다.
> `0016:9DFF:FE43:F2E0`
2. 7번째 비트 플리핑 (flipping)
- MAC 주소에서는 유니버설/로컬(ULA) 비트라 불리는 7번째 비트가 주로 0으로 설정된다.
- EUI-64 규칙에 따라 이 비트를 1로 변경한다.
- MAC 주소의 첫 번째 바이트 `00`의 이진 표현은 `00000000`으로, 여기서 7번째 비트를 플립한다.
> `0216:9DFF:FE43:F2E0`
3. IPv6 주소 구성
- 위의 변환된 EUI-64 형식 주소를 네트워크의 나머지 부분과 결합하여 전체 IPv6 주소를 형성할 수 있다.
- 예를 들어, 네트워크 prefix가 `2001:0db8:85a3::`인 경우,
> 최종 IPv6 주소는 `2001:0db8:85a3:: 0216:9DFF:FE43:F2E0`이 된다.
/ EUI-64 형식에서 7번째 비트가 0이면 로컬 네트워크에서만 유효한 '로컬', 1이면 전역적인 '유니버설'로 간주된다.
IPv6의 특징 (3) : 멀티캐스트
기존 IPv4의 브로드캐스트 방식은 ARP 등을 위해 필수적이었지만 루핑 등 원치 않는 전송 문제가 발생하는 등 비효율적이었다. 이에 대해 IPv6는 멀티캐스트를 지원함으로써 이를 해결했다.
IPv4에도 멀티캐스트 기능은 존재했지만 IPv6는 이를 더욱 개선하고 발전시켰는데, 특히 4 비트의 ScopeID를 지원함으로써 멀티캐스트 전송 영역을 직접 지정할 수 있게 됐다. 이와 더불어, IPsec의 사용도 필수화되어 보안 또한 향상되었다.
IPv6의 특징 (4) : 간소화된 헤더와 이동성
IPv6는 IPv4에서 사용하던 헤더 필드의 절반을 날려 헤더 자체를 간소화시켰고 이로 인해 라우팅 성능을 향상시켰다. 하지만, IP 주소가 32 bit에서 128 bit로 확장됐기 때문에 주소를 확인하는데 시간이 더 오래 걸렸고, 전체적인 헤더 길이가 2배로 늘어나 성능에 영향을 줄 수도 있다.
한편, Wibro 등 무선 랜 기술이 발달함에 따라 이동하면서도 현재 네트워크에 안정적으로 접속할 수 있는 이동성 Mobility 이 보장되었다.
IPv6의 특징 (5) : 유니캐스트, 멀티캐스트, 애니캐스트
IPv4와 대조되는 IPv6의 통신 방식은 바로 더 이상 브로드캐스트가 아니라 애니캐스트 방식을 사용한다는 것이다.
브로드캐스트 방식은 자신이 속한 네트워크 내에 연결된 모든 포트로 통신을 전송한다면, 애니캐스트 방식은 자신이 속한 그룹 내 포트 중 자신과 가장 가까이 있는 곳으로 패킷을 전송하는 방식이다.
IPv6의 특징 (6) : IPv4와의 호환성
IPv6는 IPv4의 부족한 점을 보완하기 위해 개발되었지만 그게 완성되었다고 기존에 잘 사용하던 IPv4 주소 체계를 그만두면 큰 혼란이 발생할 것이다. 따라서, 개선된 방식을 사용하면서도 기존에 사용 중이던 체계를 헤치지 않기 위해 IPv6는 IPv4와의 호환성을 신경 쓰게 되었다.
이를 해결하기 위해 개발된 방식이 듀얼 스택 Dual Stack 과 터널 Tunnel 방식이다.
듀얼 스택
듀얼 스택은 시스템이 IPv4와 IPv6 방식을 모두 인식할 수 있어 IPv4 통신이 들어올 때는 IPv4 애플리케이션이, IPv6 통신이 들어올 때는 이를 이해할 수 있는 IPv6 애플리케이션이 처리할 수 있는 방식이다.
터널
터널 방식은 서로 다른 IPv6 네트워크 간 통신을 위해 중간 통신망이 IPv6를 사용하지 않더라도 문제 없는 방식으로, 중간에 IPv6를 IPv4 방식으로 처리하기 위한 캡슐화 Encapsulation 방식이 존재한다.
'CS > 컴퓨터네트워크' 카테고리의 다른 글
CISCO 네트워킹 11. 무선 네트워크 구성 (0) | 2024.07.09 |
---|---|
CISCO 네트워킹 10. WAN(Wide Area Network)의 구성 (0) | 2024.06.29 |
CISCO 네트워킹 09. 라우터와 액세스 리스트 (Access List) (1) | 2024.06.25 |
CISCO 네트워킹 08. 라우팅 프로토콜 (1) | 2024.06.24 |
CISCO 네트워킹 07. 라우터와 라우팅 프로토콜 (1) | 2024.06.14 |