컴퓨터망
24. IPv6 Protocol
주소를 변경하려면 128비트 주소를 수용하도록 IP 데이터그램의 형식을 변경해야 한다
이 장은 IPv6 데이터그램의 형식을 본다
- 각 패킷은 필수 기본 헤더 뒤에 페이로드로 구성된다
- 페이로드는 선택적 확장 헤더와 상위 계층의 데이터의 두 부분으로 구성된다
- 기본 헤더는 40바이트를 차지한다
- 확장 헤더와 상위 계층의 데이터는 최대 65,535바이트의 정보를 포함한다
Ver
- 이 4비트 필드는 IP의 버전 번호를 정의한다
- IPv6의 경우 값은 6이다
Traffic Class
- 이 8비트 필드는 배달 요구 사항이 다른 여러 페이로드를 구별하는 데 사용
- IPv4의 type of service 필드를 대체
Flow label
- flow label은 특정 데이터 흐름에 대한 특수 처리를 제공하도록 설계된 20비트 필드
Payload length
- 16비트 페이로드 길이 필드는 기본 헤더를 제외한 IP 데이터그램의 길이를 정의
Next Header
- 데이터그램의 기본 헤더 다음에 오는 헤더를 정의하는 8비트 필드
- Next 헤더는 IP에서 사용하는 선택적 확장 헤더 중 하나이거나 UDP 또는 TCP와 같은 캡슐화된 패킷의 헤더
- 버전 4의 이 필드를 프로토콜이라고 한다
Hop limit
- 이 8비트 홉 제한 필드는 IPv4의 TTL 필드와 동일한 용도로 사용
Source address
- 소스 주소 필드는 데이터그램의 원래 소스를 식별하는 16바이트(128비트) 인터넷 주소
Destination Address
- 목적지 주소 필드는 일반적으로 데이터그램의 최종 목적지를 식별하는 16바이트(128비트) 인터넷 주소
IPv4와 IPv6 헤더 비교
- IPv6에서는 헤더 길이가 고정되어 있으므로 HLEN 필드가 제거
- IPv6에서는 Type of service 필드가 제거
- total length 필드는 IPv6에서 제거되고 payload length 필드로 대체
- ID, flag 및 offset 필드는 IPv6의 기본 헤더에서 제거
- TTL 필드는 IPv6에서 hop limit이라고 한다
- 프로토콜 필드는 next header 필드로 대체
- checksum이 상위 계층 프로토콜에서 제공되기 때문에 헤더 checksum이 제거
- IPv4의 옵션 필드는 IPv6의 확장 헤더로 구현
- 기본 헤더의 길이는 40바이트로 고정된다
- 그러나 IP 데이터그램에 더 많은 기능을 제공하기 위해 기본 헤더 뒤에 최대 6개의 확장 헤더가 올 수 있다
- 이러한 헤더 중 대부분은 IPv4의 옵션이다
- hop by hop, destination이 추가되었다
hop by hop
- 소스가 데이터그램이 방문하는 모든 라우터에 정보를 전달해야 할 때 사용
Pad1
PadN
- PadN은 개념상 Pad1과 유사하다
- 차이점은 4바이트를 맞추기 위해 2바이트 이상이 필요할 때 PadN이 사용된다는 것이다.
Jumbo Payload
- 65536바이트보다 더 긴 페이로드가 필요한 경우 점보 페이로드 옵션을 사용하여 이 더 긴 길이를 정의할 수 있다
Destination
- 소스가 목적지에만 정보를 전달해야 할 때 사용된다
- 중간 라우터는 이 정보에 액세스할 수 없습니다
Source routing
- 소스 라우팅 extension 헤더는 IPv4의 strict source route와 loose 옵션의 개념을 결합
Fragmentation
Authentication
- authentication은 메시지 발신자의 유효성을 검사하고 데이터 무결성을 보장하는 이중 목적을 가지고 있다
ESP
- ESP(Encrypted security payload)는 기밀성을 제공하고 도청을 방지한다
IPv4와 v6의 차이점
- IPv4의 no-operation 및 end-of-option 옵션은 IPv6의 Pad1 및 PadN 옵션으로 대체
- record route 옵션은 IPv6에서 사용되지 않았기 때문에 구현되지 않음
- 타임스탬프 옵션이 사용되지 않았기 때문에 구현되지 않음
- source route 옵션은 IPv6에서 source route 확장 헤더라고 한다
- IPv4의 기본 헤더 섹션에 있는 fragmentation 필드가 IPv6의 확장 헤더로 이동
- authentication 헤더는 IPv6의 새로운 기능
- ESP 확장 헤더는 IPv6의 새로운 기능
Transition from IPv4 to IPv6
- 인터넷상의 엄청난 수의 시스템 때문에 IPv4에서 IPv6으로의 전환은 갑자기 일어날 수 없다
- 인터넷의 모든 시스템이 IPv4에서 IPv6으로 이동하려면 상당한 시간이 걸린다
- IPv4와 IPv6 시스템 간의 문제를 방지하려면 transition이 원활해야 한다
- IETF는 전환을 돕기 위해 세 가지 전략을 고안했다
Dual stack
- 모든 인터넷이 IPv6을 사용할 때까지 스테이션은 IPv4와 IPv6을 동시에 실행한다
- DNS가 IPv4 주소를 반환하면 소스 호스트가 IPv4 패킷을 보낸다
- DNS가 IPv6 주소를 반환하면 소스 호스트가 IPv6 패킷을 보냅니다.
Tunneling
- 터널링은 IPv6을 사용하는 두 대의 컴퓨터가 서로 통신하기를 원하고 패킷이 IPv4를 사용하는 지역을 통과해야 할 때 사용되는 전략
- 이 영역을 통과하려면 패킷에 IPv4 주소가 있어야 한다
- 따라서 IPv6 패킷은 지역에 들어갈 때 IPv4 패킷으로 캡슐화되고 지역을 나갈 때 캡슐을 해제한다
- 발신자는 IPv6을 사용하려고 하지만 수신자는 IPv6을 이해하지 못한다
- 이 경우 헤더 변환을 통해 헤더 형식을 완전히 변경