문제
IPv6 주소 'a184:0a01:0000:0000:cd8c:1000:317b:00ff'를 생략하여 표기한 것으로 알맞은 것은?
① a184:a1::cd8c:1:317b:ff ② a184:a01::cd8c:1000:317b:ff ③ a184:a01:0:0:cd8c:10:317b:0ff ④ a184:a01:cd8c:1000:317b:ff
정답
2번
해설
정답: 2. IPv6 생략 규칙은 (1) 각 그룹 앞쪽의 0은 제거하고, (2) 연속된 0 그룹은 '::'로 한 번만 압축한다. 원본 'a184:0a01:0000:0000:cd8c:1000:317b:00ff'에서 0a01→a01, 0000:0000→::, 1000은 0이 아니므로 유지, 00ff→ff가 되어 'a184:a01::cd8c:1000:317b:ff'가 된다.
오답 풀이
- 1번: a01을 a1로, 1000을 1로 잘못 줄였다. 0은 앞쪽만 제거하며 중간·뒤쪽 0은 살린다.
- 2번: 앞자리 0만 제거하고 연속 0 두 그룹을 ::로 압축한 올바른 표기이다.
- 3번: ::를 쓰지 않고 0:0으로 남겼고 1000을 10으로, 00ff를 0ff로 잘못 줄였다.
- 4번: 0000:0000 자리를 :: 없이 통째로 삭제해 그룹 수가 부족하다.
보충 개념 IPv6는 16비트씩 8그룹(총 128비트)으로 표기하며, '::'은 주소 전체에서 한 번만 쓸 수 있다. 1000은 0이 아닌 값이므로 절대 생략하지 않는다.