네트워크 강의를 들으면서, 자주 들어봤던, IP와 IP를 어떻게 관리하고 식별하는지에 대해서 알아보도록 하겠습니다.
IP란 Internet Protocol의 줄임말로, L3 Layer (Network Layer)의 식별자입니다.
이것의 역할은 네트워크를 사용하고 있는 Host(컴퓨터)를 식별하는 것 입니다.
IP에 종류에는 크게 IPv4, IPv6가 있는데, 저는 우선 Ipv4 에 대해서 알아보고 어떤 차이가 있는지 알아보도록 하겠습니다.
IPv4 는 8bit(1byte)가 4개 모여서 주소를 이루게 됩니다. (총 32bit)
그림으로 IPv4 주소 체계를 알아봅시다.
다음과 같이 구성되어 있습니다.
그림의 Network ID, Host ID를 정리해봅시다.
#cf) 쉽게 비유를 해서 설명해보겠습니다.
Network ID : 서울시 강남구 역삼동 ~번지 로 이해할 수 있습니다.
Host ID : 같은 집에 사는 가족 구성원을 식별하는 값 (누나, 동생 ,엄마 ,아빠 ,나 )
#cf) IPv6 란
128비트(16byte) 로 확장된 구조이고, Ipv4에 의해 패킷의 단편화 하지 않으면서 라우팅이 가능하며, 모든 사람이 사용할 수 있을 정도로 많은 주소를 구성할 수 있습니다. 네트워크 주소 변환 (NAT)이 필요 없는 네트워크 식별자 입니다.
( 좀 더 자세한 내용이 있지만, 네트워크 지식이 부족해, 공부를 추가적으로 이어나가면서, 다른 여러글의 내용들이 이해되도록 해야할거 같습니다.)
IPv4의 헤더 구조가 어떻게 되어있는지 알아보도록 하겠습니다.
20Byte의 헤더를 그림에서 한 줄에 4Byte 씩 끊어서 표현되어 있으니 이에 맞춰서 각각 어떤 것들을 의미하는지 알아보겠습니다 🙂
실제 WireShark이란 프로그램을 통해서, 나의 네트워크로 들어오는 아무 정보를 까서 IP protocoal 정보를 확인해 보았습니다.
위의 설명한 해더들의 값이 변환되어서 설명되어 있는것을 확인할 수 있습니다.
(16진수 체계로 변환되어 있기 때문에, 16진수를 알아야 좀 더 편하게 볼 수 있습니다 :) )
널널한 개발자님의 - 네트워크-핵심이론-기초