본문 바로가기

네트워크

네트워크 기초 - IPv6

IPv4와 마찬가지로 내용이 광범위합니다. 간단히 요약하고, 설명이 필요한 부분은 추가로 포스팅하겠습니다.

 

 

1. IPv6

IPv4가 고갈되어 차기 주소체계로 고안된 것으로 IPv4가 232 개의 주소를 가진다면 128비트의 값을 가지는 IPv6는 2128 개의 값을 가집니다. 어마어마하게 많은 양이라 고갈될 걱정이 없는 주소 체계라고 볼 수 있습니다.

 

다음과 같이 16진수 4자리를 사용하는 8개의 필드로 구성되어 있으며 각 필드는 점(.) 대신 콜론(:) 으로 구분합니다.

2606 : 2800 : 0220 : 0001 : 0248 : 1893 : 25C8 : 1946

이 주소체계는 너무 길고 복잡해보이기 때문에 몇가지 생략규칙이 정해져 있는데 다음과 같습니다.

 

- 필드 전체에 0이 연속될 경우 생략할 수 있다.

2606:4700:4700:0000:0000:0000:0000:1111 2606:4700:4700::1111

 

- 필드 최상위에 0이 있을 경우 생략할 수 있다.

2606:2800:0220:0001:0248:1893:25C8:1946 2606:2800:220:1:248:1893:25C8:1946

 

- 0이 흩어져 있으면 0이 몇개가 있는지 알 수 없으므로 가장 긴 부분만 생략하고 나머지는 명시한다.

 

결과적으로 아래의 주소는 모두 같은 주소를 나타냅니다.

2001:0DB8:0000:0000:0000:0000:1428:57ab

2001:0DB8:0000:0000:0000::1428:57ab

2001:0DB8:0:0:0:0:1428:57ab

2001:0DB8:0::0:1428:57ab

2001:0DB8::1428:57ab

 

 

2. 예약주소

IPv6는 IPv4와 마찬가지로 다음과 같은 예약주소들을 가지고 있습니다.

::/128 모든 주소가 0으로 이루어짐. 주소가 지정되지 않은 경우에 사용.
::1/128 루프백 IP
::ffff:0:0/96, ::/96 IPv4 매핑 및 호환성을 위해 예약된 주소.
100::/64 이 주소로 향하는 패킷은 라우터에서 버려진다. 폐기 접두어(discard prefix)를 정의하는 RFC 번호는 6666이다. 넓은 주소공간을 가지기 때문에 대역 하나를 통으로 폐기할 수 있다.
2001:db8::/32 IPv4의 TEST-NET과 비슷한 문서용 예약 주소.
2002::/16 중 사설 IPv4 주소 6to4 주소들로 IPv4주소에 대응되며 사설IPv4주소는 IPv6에서도 사설 주소이다.
fc00::/7 -
fe80::/10 Link-local IP 주소. 네트워크 유지 관리에 사용되며 모든 인터페이스는 하나 이상의 링크-로컬 주소를 가져야 하고 이 주소로 ICMPv6를 주고받으며 연결된 상대방을 확인한다.

 

 

3. 유형

- 유니캐스트

단일 인터페이스에 전달합니다.

 

- 애니캐스트

멀티 인터페이스중 하나에 전달되며 여러 노드들에 속한 인터페이스의 집합을 지정합니다.

전달되는 인터페이스는 라우팅 프로토콜의 거리 측정에 의해 같은 애니캐스트 주소를 갖는 인터페이스중 가장 거리가 짧은 인터페이스에 전달합니다.

애니캐스트 주소는 유니캐스트 주소 공간으로부터 할당되어지며 유니캐스트 주소 구조를 가집니다.

IPv6 패킷의 소스 주소로 사용될수 없습니다.

IPv6 호스트에 할당될 수 없으며 IPv6 라우터에만 할당이 가능한 주소입니다.

 

- 멀티캐스트

멀티 인터페이스에 전달됩니다.

여러 노드들에 속한 인터페이스의 집합을 지정합니다.

 

 

4. 특징

- IP 주소의 확장

IPv4와 호환성을 최대로 하며 주소공간을 폭발적으로 늘렸습니다.

- 호스트 주소 자동 설정

IPv6 호스트는 IPv6 네트워크에 접속하는 순간 자동으로 네트워크 주소를 부여받습니다. IPv4는 수동으로 설정해야 했으므로 큰 이점입니다.

- 패킷 크기 확장

IPv4에서 패킷의 크기는 64KB로 제한되어 있습니다. IPv6는 정보프로그램 옵션을 사용하여 특정 호스트 사이에서 임의로 큰 패킷을 주고받을 수 있으므로 대역폭이 더 넓은 네트워크를 더 효율적으로 사용할 수 있습니다.

- 효율적인 라우팅

IP 패킷 처리를 신속하게 할 수 있도록 고정 크기의 단순한 헤더를 사용하며 확장 헤더를 통해 네트워크 기능 확장 및 옵션의 확장이 쉬운 구조로 설계되었습니다.

- 플로 레이블링

플로 레이블(flow label) 개념을 도입하여 특정 트래픽은 특별한 처리를 통해 높은 품질의 서비스를 제공할 수 있게 합니다.

- 인증 및 보안 기능

패킷 출처 인증과 데이터 무결성, 비밀보장 기능을 반영하여 IPv6 확장헤더를 통해 적용가능합니다.

- 이동성

네트워크의 물리적 위치에 제한받지 않고 같은 주소를 유지하며 자유롭게 이동할 수 있습니다. (모바일IP)

(IPv4에도 모바일 IP가 적용되어 있지만 많이 사용되지 않습니다. 자세한 내용은 추후에 다루겠습니다.)

 

 

5. 전환기술

IPv4 주소를 IPv6 주소로 점진적인 전환을 위해 기술을 적용중에 있습니다.

듀얼스택 - IPv4와 IPv6를 동시설정하여 통신상태에 따라 선택적으로 사용하게 합니다.

터널링 - IPv4 네트워크를 경유하여 IPv6간 통신을 위한 방식으로 가상의 경로(터널)를 만들어 통신합니다. IPv6패킷은 그 영역에 들어갈 때 IPv4패킷 내에 캡슐화되며 그 영역을 나올때 역캡슐화 됩니다.

주소변환 - 변환 헤더를 추가하여IPv4 주소와 IPv6 주소를 상호변환 하는 방식입니다.