먼저 IP의 의미와 인터넷이 통신하는 방법에 관한 글을 참고하고 오시면 이해하는데 도움이 됩니다.
https://steady-snb.tistory.com/31
IPv4란?
32비트로 이루어진 주소체계입니다.
형태는 192.168.123.0 와 같이 8비트 단위로 점을 찍어 4개의 십진수로 나타내며
8비트 단위를 '옥테트(octet)'라고 부릅니다.
IPv4는 2^32개(약 42억) 만큼의 주소를 가질 수 있는데 최근에 많은 전자기기의 상용화로 인해
주소가 부족한 부분을 해결하기위한 NAT이나 서브네팅 같은 부가적인 기술이 필요합니다.
IP 주소의 구성 - 네트워크 부와 호스트 부
IP 주소는 어느 네트워크의 어느 호스트라는 것을 식별하는 주소입니다. 따라서 IP 주소는 호스트가 속한 네트워크 주소인 네트워크 부(Network Part 또는 Netwrok ID)와 호스트의 주소인 호스트 부 (Host Part 또는 Host ID)로 구성됩니다. 즉, 네트워크 부는 어떤 네트워크 인지를 나타내 다른 네트워크와 구분하는 역할을 하고, 호스트 부는 해당 네트워크의 어느 호스트인지를 나타내 다른 호스트와 구분하는 역할을 합니다. 여기서 호스트는 컴퓨터뿐만이 아니라 IP 주소가 할당되는 라우터를 포함합니다.
네트워크 부는 인터넷에 접속되어 있는 모든 네트워크 중에서, 호스트 부는 그 호스트가 속한 네트워크 내에서 유일한 번호를 할당하여 인터넷 전체에서 동일한 IP 주소를 갖는 호스트는 1대밖에 없도록 설정합니다.
따라서 같은 네트워크 안에 있는 컴퓨터, 즉 라우터 없이도 데이터 전송이 가능한 컴퓨터는 네트워크 부가 동일하고 호스트 부만 다릅니다. 달리 말하면 네트워크 부가 다르다는 것은 서로 다른 네트워크라는 의미이고, 라우터를 통하지 않고는 통신이 불가능하다는 뜻입니다. 서로 다른 네트워크가 라우터를 통해 통신이 가능한 것은 라우터가 IP 주소의 네트워크 부를 보고 라우팅을 하여 데이터를 전송하기 때문입니다.
인터넷에 접속 가능한 네트워크를 만들기 위해 IP 주소 할당 기관(NIC)에 IP 주소 할당을 신청하면 할당 기관에서는 네트워크 부까지만 할당합니다. 네트워크 부를 할당받으면 네트워크를 만드는 사람(네트워크 관리자)이 호스트 부를 결정하여 네트워크 부와 호스트 부를 합친 IP 주소를 개별 호스트에 설정하는 것입니다.
IP에서 네트워크 영역과 호스트 영역을 구분하고 나누는 클래스에 대해 알아보자.
여기서 IP클래스라는 개념이 등장하는데 이 부분은 다른 포스팅에서 다뤘습니다.
https://steady-snb.tistory.com/33
IPv6란?
IPv6는 128비트로 이루어진 주소체계이며 IPv4의 주소부족을 해결하기 위해 고안되었다.
16비트씩 8개로 구분하고 16비트는 16진수로 변환되어 콜론(:)으로 구분하여 표시합니다.
IPv6는 네트워크와 노드 구성요소의 두 부분으로 나뉩니다.
네트워크 구성요소는 주소의 처음 64비트이며 라우팅에 사용되고
노드 구성요소는 이후 64비트이며 인터페이스 주소를 식별하는데 사용됩니다.
네트워크 노드는 48비트와 16비트로 분할할 수 있는데 48비트는 전역네트워크 16비트는 서브넷에 사용됩니다.
IPv4와 IPv6의 차이
가장 큰 차이는 주소를 할당할 수 있는 갯수의 차이입니다.
IPv4가 주소부족을 해결하기 위해 NAT, 서브네팅 같은 기술을 사용했다면
IPv6는 그러한 기술들이 불필요합니다.
그리고 IPv4에는 IPSec이라는 프로토콜을 통해 보안관련 기능을 이용했다면
IPv6는 프로토콜 내에 보안관련 기능을 탑재하였습니다.
또한 IPv4에는 체크섬이라는 필드를 통해 손상된 패킷을 확인하고 폐기하였는데
IPv6에는 프로토콜 내에 체크섬필드가 탑재되었습니다.
그렇다면 IPv6가 월등히 좋은데 왜 아직도 IPv4가 많이 이용되고있나요?
IPv4를 IPv6로 전환하려면 많은 기술 및 비용이 듭니다.
'IT지식 > Computer Science' 카테고리의 다른 글
IP 클래스리스와 서브넷마스크(Subnet Mask), 서브네팅(Subneting)에 대해 알아보자 (0) | 2025.01.12 |
---|---|
IP 클래스(class)에 대해 알아보자 (0) | 2025.01.12 |
IP와 MAC주소 그리고 이들을 활용한 통신방법 (0) | 2025.01.10 |
라우터(Router)와 라우팅(Routing)이란? (0) | 2025.01.07 |
애플리케이션 계층(HTTP, SSH, FTP, SMTP 등)에 대해 알아보자 (0) | 2025.01.07 |