IPv6 주소 체계는 IPv4의 32비트 주소 공간의 부족으로 인해 개발되었다.
IPv6는 128비트 주소 체계를 사용하며, 2^128 (3.4 x 10^38 정도)의 주소를 갖는다. 여담으로, 지그에 존재하는 모든 모래에 주소를 할당해도 남을 정도의 엄청난 양이라고 한다.
현재 많이 사용되고 있는 IPv4의 경우 점으로 구분된 십진수 4개 그룹으로 구성되는데,
IPv6는 콜론으로 구분된 4자리의 16진수 8개 그룹으로 구성된다.
이때 0이 반복되는 0000의 경우 :: 같은 식으로 0 4개를 생략할 수 있다.
IPv4의 주소가 부족한 상태인데, 지금 당장 IPv6 주소 체계를 사용하지 않는 이유는,
네트워크에 수많은 개념들이 그러하듯 발전된 개념이 있어도, 네트워크 체계 자체가 물리적 인프라가 이미 깔려있는 상태이기 때문에 비용 문제로 한 번에 상위 기술로 넘어가기 힘들거나 불가능하다.
또한, 동시에 모든 기계들을 중단했다 재시작할 수는 없기 때문에, 아직까지도 가장 많이 쓰이는 IP 주소 체계는 IPv4이다.
IPv6는 링크 로컬 주소와 글로벌 주소로 나뉘게 되는데, 각각 IPv4의 private address와, public address와 유사하다.
링크 로컬 주소는 지역에서만 사용되며, link local prefix인 fe80::/10과 64비트 MAC주소를 사용한다. 지역에서만 사용되기 때문에 전역적으로 고유한 값은 아니다.
글로벌 주소는 router advertisement(라우터 알림) 통해 라우터에서 제공하는 global prefix와 64비트 MAC 주소를 사용하며, 전역적으로 고유한 주소이다.
앞서 기술했듯, 이미 존재하는 IPv4 라우터를 이용하여 IPv6도 전송을 해야 하기 때문에 IPv4 라우터도 IPv6 체계를 이해할 수 있도록 캡슐화를 해준다.
자세히 말해서, IPv6 데이터그램은 IPv4 라우터를 통과할 때 IPv4의 payload(전송되는 데이터)로 encapsulation하여 전달한다.
이처럼, 네트워크 분야는 급진적인 변화가 일어나기 보다는 기술을 덧붙이는 과정의 연속이다.
위 사진을 보면, IPv6 라우터인 A, B, E, F 라우터 사이에 IPv4 라우터 C, D가 있다고 했을 때, 올바른 전송이 이루어질 수 있도록 터널링을 사용해 연결한다.
라우터 B에서 C로 넘어갈 때는 캡슐화되어 IPv4 라우터가 읽을 수 있게 되고, 라우터 E로 넘어갈 때는 디캡슐화되어 안정적인 데이터 전송이 이루어진다.
IPv6 라우터 입장에서는 마치 산 속을 통과하는 터널처럼 데이터가 한 쪽으로 슝 들어갔다 뿅하고 나오는 것처럼 보이는데, 이 때문에 터널링이라는 이름이 붙게 되었다.
'네트워크 > Network Layer' 카테고리의 다른 글
[네트워크] Network Layer (7) - Longest Prefix Matching (0) | 2022.12.11 |
---|---|
[네트워크] Network Layer (6) - Router(Input/output port, Switching Fabric) (1) | 2022.12.10 |
[네트워크] Network Layer (4) - NAT : Network Address Translation (0) | 2022.11.06 |
[네트워크] Network Layer (3) - DHCP : Dynamic Host Configuration (0) | 2022.11.04 |
[네트워크] Network Layer (2) - IP Addressing (Subnet, CIDR) (0) | 2022.11.03 |