Notice
Recent Posts
Recent Comments
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

충분히 쌓여가는

IPv4와 IPv6 본문

IT/Computer Science

IPv4와 IPv6

빌드이너프 2023. 1. 5. 06:48

IPv4(Internet Protocol version 4)

  • 인터넷에서 사용되는 패킷 교환 네트워크상에서 데이터를 교환하기 위한 32비트 주소체계를 갖는 네트워크 계층의 프로토콜
  • 약 43억 개의 고유한 IP주소를 가질 수 있음
  • 인터넷에 연결된 모든 컴퓨터 자원을 구분하기 위한 인터넷 주소
  • 총 32비트 숫자로 8비트씩 나누어 4부분으로 구성(. 마침표로 구분)
  • 네트워크 부분의 길이(인터넷 주소의 개수)에 따라 A클래스에서 E클래스까지 총 5단계로 구성
  • 원래 2진수로 되어있지만 사람 기준 구분하기 힘들기 때문에 192.168.0.1(10진수)과 같이 표현함

IPv4 헤더(Header)

IPv4 헤더 구조

  • IP 패킷의 앞부분에서 주소 등 각종 제어정보를 담고 있는 부분
  • IPv4 헤더 사이즈는 옵션 미지정시에는 최소 20바이트 이상(IPv6 경우 최소 40바이트 이상)

IPv4 주소체계

  • IPv4의 주소체계는 10진수로 총 12자리이며, 네 부분으로 나뉨
  • 각 부분은 0~255까지 3자리의 수로 표현됨
  • IPv4 주소는 32비트로 구성되어 있음
  • 인터넷 사용자의 증가로 인해 주소 공간의 고갈로 128 비트의 주소체계를 갖는 IPv6가 등장, 점차 확산 중임
  • 32비트 IP 주소는 Network를 나타내는 부분과 Host를 나타내는 부분으로 구성되어 있음
  • Subnet Mask: Network 부분(사용 못하는 부분)과 Host 부분(사용할 수 있는 부분)을 구분
  • IP주소 첫번째 수로 구분 가능(192.168.0.1은 첫번째 수가 192로 시작하기 때문에 C Class | 10.10.10.0은 A Class)

IPv4 클래스 분류

분류 설명 범위
A class - 가장 높은 단위의 클래스
- 1~126(0, 127로 시작된 IP는 예약됨) 범위의 IP 주소 가짐
- 두 번째, 세 번째, 네 번째 단위의 세 숫자는 A class가 자유롭게 네트워크 사용자에게 부여가 가능한 IP
- 국가나 대형 통신망에 사용(16,777,214개의 호스트)[1~127]
0.0.0.0 ~ 127.255.255.255
B class - 두 번째로 높은 단위의 클래스
- 첫 번째 단위의 세 숫자는 128~191 가운데 하나를 가짐
- 두 번째 단위의 세 숫자는 B class가 접속할 수 있는 네트워크 지시
- 중대형 통신망(회사)에 사용(65,534개의 호스트)[128~191]
128.0.0.0 ~ 191.255.255.255
C class - 최하위 클래스
- 아이피 구성에서 첫 번째 단위의 세 숫자는 192~223 가운데 하나를 가짐
- 두 번째와 세 번째 단위의 세 숫자는 C class가 접속할 수 있는 네트워크를 지시
- C class가 자유로이 부여할 수 있는 아이피는 마지막 네 번째 단위의 254개(2개는 예약)
- 소규모 통신망(일반 가정집, 피씨방)에 사용(254개의 호스트)[192~223]
192.0.0.0 ~ 223.255.255.255
D class - 멀티캐스트 용도(화상회의)로 예약된 주소 224.0.0.0 ~ 239.255.255.255
E class - 연구를 위해 예약된 주소 240.0.0.0 ~ 255.255.255.255

IPv4 한계

  • 80년대에 IPv4를 개발할 당시 추후 40년 후에 사람들이 최소 2개 이상의 인터넷 연결 장치를 가지게 될 것이라고 생각하지 못함
  • 즉, 충분한 IP 주소를 제공할 수 없게됨

IPv6(Internet Protocol version 6)

  • 인터넷 프로토콜 스택 중 네트워크 계층의 프로토콜
  • 버전 6 인터넷 프로토콜로 제정된 차세대 인터넷 프로토콜
  • 현재 IPv4가 가지고 있는 주소고갈, 보안성, 이동성 지원 등의 문제점을 해결하기 위해서 개발된 128Bit 주소체계를 갖는 차세대 인터넷 프로토콜

IPv6 특징

특징 설명
IP 주소의 확장 - IPv4의 기존 32비트 주소 공간에서 벗어나, IPv6는 128비트 주소 공간을 제공(16비트씩 8부분)
이동성 - IPv6 호스트는 네트워크의 물리적 위치에 제한받지 않고 같은 주소를 유지하면서도 자유롭게 이동 가능
인증 및 보안 기능 - 패킷 출처 인증과 데이터 무결성 및 비밀 보장 기능을 IP 프로토콜 체계에 반영
- IPSec 기능적용 및 IPv4보다 보안성 강화
개선된 QoS 지원 - 흐름 레이블(Flow Label) 개념 도입
- 특정 트래픽은 별도의 특별한 처리(실시간 통신 등)를 통해 높은 품질의 서비스를 제공
Plug&Play 지원 - IPV6 호스트는 IPv6 네트워크에 접속하는 순간 자동적으로 네트워크 주소를 부여받음
- 멀티미디어의 실시간 처리 가능
Ad-hoc 네트워크 지원 - Ad-hoc 네트워크를 위한 자동 네트워킹 및 인터넷 연결 지원
- 자동으로 네트워크 환경 구성 가능
단순 헤더 적용 - IP 패킷의 처리를 신속하게 할 수 있도록 고정 크기의 단순 헤더를 사용하는 동시에, 확장 헤더를 통해 기능에 대한 확장 및 옵션 기능 사용이 용이한 구조
실시간 패킷 추적 가능 - 흐름 레이블(Flow Label)을 사용하여 패킷의 흐름을 실시간 제공
  • 128비트의 긴 주소를 사용하여 주소 부족 문제를 해결할 수 있으며, IPv4에 비해 자료 전송 속도 빨라짐
  • 인증성, 기밀성, 데이터 무결성의 지원으로 보안 문제를 해결할 수 있음
  • IPv4와 호환성 뛰어남
  • 주소의 확장성, 융통성, 연동성 뛰어남
  • 실시간 흐름 제어로 향상된 멀티미디어 기능 지원
  • IPv4에 비해 등급별, 서비스별로 패킷을 구분할 수 있어 품질 보장 용이

IPv6 헤더(Header)

IPv6 헤더 구조


IPv6 주소체계

  • IPv4는 32비트의 주소 공간을 제공함에 반해, IPv6는 128비트의 주소 공간을 제공함
  • IPv6 주소의 경우 일반적으로 16비트 단위로 나누어지며(너무 길기때문) 각 16비트 블록은 다시 4자리 16진수로 변환되고 콜론으로 구분됨
  • 64비트를 기준으로 앞 64비트를 네트워크 주소로, 뒤 64비트를 네트워크에 연결된 랜카드 장비 등에 할당하는 인터페이스 주소로 활용됨
  • IPv6의 128비트 주소 공간은 128비트로 표현할 수 있는 3.4 x 10의 38승개의 주소를 갖고 있어 거의 무한대로 쓸 수 있음
  • IPv6의 128비트 주소 공간은 16비트(2옥탯)를 16진수로 표현하여 8자리로 나타냄
  • 주소를 주소 체계별로 할당하기 떄문에 주소 낭비를 주여 간단하게 결정할 수 있음
더보기

2001:0db8:85a3:08d3:1319:8a2e:0370:7334

  • 대부분의 자리가 0의 숫자를 가지게 됨
  • 0000을 0으로 축약하거나, 아예 연속되는 0의 그룹을 없애고 ':'만을 남길 수 있음
  • 아래의 IPv6 주소들은 모두 같은 주소를 나타냄
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
  • 맨 앞자리의 0도 축약 가능(2001:0DB8:02de::0e13는 2001:DB8:2de::e13로 축약 가능)
  • 0을 축약하고 ':'로 없애는 규칙은 두 번 이상 적용할 수 없음

 

IPv6 주소체계

유니캐스트(Unicast) 단일 송신자와 단일 수신자 간의 통신(1:1 통신)
멀티캐스트(Multicast) 단일 송신자와 다중 수신자 간의 통신(1:N 통신)[인터넷 방송]
애니캐스트(Anycast) 단일 송신자와 가장 가까이 있는 단일 수신자 간의 통신(1:1 통신)

IPv4와 IPv6 특징

구분 IPv4 IPv6
주소길이 32Bit 128Bit
표시방법 8비트씩 4부분으로 나뉜 10진수
(192.168.10.1)
16비트씩 8부분으로 나뉜 16진수
(2001:9e76:..:e11c)
주소개수 약 43억 개 3.4 x 10의 38승
주소할당 A, B, C, D 등 클래스 단위 비순차적 할당(비효율적) 네트워크 규모 및 단말기 수에 따른 순차적 할당(효율적)
품질제어 품질 보장 곤란 등급별, 서비스별로 패킷 구분 기능해 품질 보장 용이(QoS)
헤더크기 가변 고정
QoS Best Effort 방식 / 보장 곤란 등급별, 서비스별 패킷 구분 보장
보안기능 IPSec 프로토콜 별도 설치 확장기능에서 기본 제공
Plug&Play 지원 안함 지원
모바일IP 곤란 용이
웹 캐스팅 곤란 용이
전송방식 유니캐스트, 멀티캐스트, 브로드 캐스트 유니캐스트, 멀티캐스트, 애니캐스트

IPv4에서 IPv6 전환 방법

  • IPv4 전용 호스트와 IPv6 전용 호스트 간의 통신을 위한 기술
  • 주소와 헤더의 변환 수행
  • 변환 기술: Dual Stack, Tunneling, Address Translation

1. 듀얼 스택(Dual Stack)

  • IP 계층에 두 가지(IPv4, Ipv6)의 프로토콜이 모두 탑재되어 있고 통신 상대방에 따라 해당 IP 스택을 선택하는 방법

 

듀얼스택 특징

구분 특징
장점 DNS 주소 해석 라이브러리(DNS Resolver Library)가 두 IP 주소 유형을 모두 지원
단점 프로토콜 스택 수정으로 인한 과다한 비용 발생

2. 터널링(Tunneling)

  • IPv6 망에서 인접한 IPv4 망을 거쳐 다른 IPv6 망으로 통신할 때 IPv4 망에 터널을 만들고 IPv4에서 사용하는 프로토콜로 캡슐화하여 전송하는 방법

 

터널링 특징

구분 특징
장점 여러 표준화 활동 존재하고 다양한 기술 표준이 제안되고 있음
단점 구현이 어려우며, 복잡한 동작 과정 가짐

3. 주소 변환(Address Translation)

  • IPv4 망과 IPv6 망 사이에 주소변환기(IPv4-IPv6 게이트웨이)를 사용하여 서로 다른 네트워크 상의 패킷을 변환시키는 방법
  • 주소변환 방식은 게이트웨이 관점이라고도 함
  • 게이트웨이 관점의 IPv4/IPv6 변환방식은 변환방법에 따라서 헤더 변환방식, 전송 계층 릴레이 방식, 응용 계층 게이트웨이 방식으로 분류함

 

주소변환 특징

구분 특징
장점 IPv4, IPv6 호스트의 프로토콜 스택에 대한 수정이 필요 없으며, 변환방식이 투명하고 구현 용이
단점 고가의 주소 변환기 필요

 


참고자료

수제비 정보처리기사 실기 11-36 ~ 11-41

IBM, IPv4와 IPv6의 비교

'IT > Computer Science' 카테고리의 다른 글

Session 기반 인증 | Token 기반 인증  (0) 2023.01.06
GPU(Graphic Processing Unit)  (0) 2023.01.05
Domain  (0) 2023.01.04
CPU(Central Processing Unit)  (0) 2023.01.04
Router  (0) 2023.01.03