IP 주소(Internet Protocol address)
Post

IP 주소(Internet Protocol address)

IP주소는 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신하기 위해 사용하는 특수한 번호이다.

네트워크에 연결된 장치가 라우터이든 일반 서버이든, 모든 기계는 이 특수한 번호를 가지고 있다.

ARP

컴퓨터와 컴퓨터 간의 통신은 정확히 IP주소에서 ARP를 통해 MAC 주소를 찾아서 MAC 주소를 기반으로 통신한다.

ARP(Address Resolution Protocol)란 IP주소로부터 MAC 주소를 구하는 IP와 MAC주소의 다리 역할을 하는 프로토콜이다.

ARP를 통해 가상주소인 IP 주소를 실제 주소인 MAC 주소로 변환한다.
이와 반대로 RARP를 통해 실제 주소인 MAC 주소를 가상 주소인 IP 주소로 변환하기도 한다.

ARP의 주소를 찾는 과정은 먼저 ARP Request 브로드캐스트를 보내서 IP주소에 해당하는 MAC 주소를 찾는다.
그런다음 해당 주소에 맞는 장치가 ARP Reply 유니캐스트를 통해 MAC 주소를 반환하는 과정을 거쳐 IP주소에 맞는 MAC주소를 찾게된다.

  • 브로드캐스트 : 송신 호스트가 전송한 데이터가 네트워크에 연결된 모든 호스트에 전송되는 방식
  • 유니캐스트 : 고유 주소로 식별된 하나의 네트워크 목적지에 1:1로 트래픽 또는 메시지를 전송하는 방식

홉바이홉 통신

홉바이홉(hop by hop)통신이란 IP주소를 통해 통신하는 과정이라고한다.

홉(hop)은 통신망에서 각 패킷이 여러개의 라우터를 건너가는 모습을 비유적으로 표현한 것이다.

수많은 서브네트워크 안에 있는 라우터의 라우팅 테이블 IP를 기반으로 패킷을 전달하고 또 전달해나가며 라우팅을 수행하며 최종 목적지까지 패킷을 전달한다.

홉바이홉 통신은 라우팅테이블의 IP를 통해 시작 주소부터 시작하여 다음 IP로 계속해서 이동하는 ‘라우팅’과정을 거쳐 패킷이 최종 목적지까지 도달하는 통신을 말한다.

  • 라우팅 : IP주소를 찾아가는 과정

라우팅 테이블

라우팅 테이블은 송신지에서 수신지까지 도달하기 위해 사용되며 라우터에 들어가 있는 목적지 정보들과 그 목적지로 가기 위한 방법이 들어있는 리스트를 말한다.

라우팅 테이블에는 게이트웨이와 모든 목적지에 대해 해당 목적지에 도달하기 위해 거쳐야 할 다음 라우터의 정보를 가지고있다.

게이트웨이

게이트웨이는 서로다른 통신망과 프로토콜을 사용하는 네트워크 간의 통신을 가능하게하는 컴퓨터나 소프트웨어를 두루 일컫는 용어이다.

인터넷에 접속하기 위해서는 수많은 게이트웨이를 거쳐야 한다. 게이트웨이는 서로다른 네트워크상의 통신 프로토콜을 변환해주는 역할을 한다.

IP 주소 체계

IP주소는 IPv4와 IPv6가 있다.

IPv4는 32비트를 8비트 단위로 점을 찍어 표기하는 IP주소 방식이다.
예시 : 123.45.67.89

IPv6는 64비트를 16비트 단위로 점을 찍어 표기하는 IP주소 방식이다.
예시 : 1234:ab8:ff00:5678

현재 IPv4가 많이 쓰이지만 IP주소 부족 문제로 IPv6주소 사용이 늘어나고 있다.

클래스 기반 할당 방식

IP 주소 체계는 A,B,C,D,E 다섯개의 클래스로 구분하는 클래스 기반 할당 방식을 사용하고 있다.

앞에 있는 부분을 네트워크 주소, 그 뒤에 있는 부분을 컴퓨터에 부여하는 주소인 호스트 주소로 놓아 사용한다.

클래스 A,B,C는 일대일 통신으로 사용되고 클래스 D는 멀티캐스트 통신, 클래스 E는 예비용 주소로 쓰인다.

클래스 A의 경우 0.0.0.0부터 127.255.255.255까지의 범위를 갖는다.

맨 왼쪽에 있는 비트를 ‘구분 비트’라고 한다.
클래스 A는 맨 왼쪽 구분비트가 0, 클래스 B는 10, 클래스 C는 110이다.
이를 통해 클래스간의 IP가 나누어진다.

네트워크의 첫 번째 주소는 네트워크 주소로 사용되고 가장 마지막 주소는 브로드캐스트용 주소로 네트워크에 속해 있는 모든 컴퓨터에 데이터를 보낼 때 사용된다.

예를 들어 실제 사용할 수 있는 주소는 클래스 A의 경우 첫번째 주소인 12.0.0.0은 네트워크 구별 주소이므로 사용할 수 없고 마지막 주소인 12.255.255.255의 경우 브로드캐스트용이므로 사용할 수 없다.
그러므로 그 사이의 12.0.0.1 ~ 12.255.255.254를 호스트 주소로 사용할 수 있다.

IPv4방식은 사용하는 주소보다 버리는 주소가 많아 이를 해결하기 위해 DHCP와 IPv6, NAT가 등장하였다.

DHCP

DHCP(Dynamic Host Configuration Protocol)는 IP 주소 및 기타 통신 매개변수를 자동으로 할당하기 위한 네트워크 관리 프로토콜이다.

이 기술을 통해 인터넷에 접속할 때마다 자동으로 IP 주소를 할당할 수 있다.

많은 라우터와 게이트웨이 장비에 DHCP 기능이 있고, 대부분의 가정용 네트워크에서 IP주소를 할당한다.

NAT

NAT(Network Address Translation)는 패킷이 라우팅 장치를 통해 전송되는 동안 패킷의 IP주소 정보를 수정하여 IP 주소를 다른 주소로 매핑하는 방식이다.

IPv4 주소 체계만으로는 부족하기 때문에 NAT로 공인 IP와 사설 IP로 나누어 사용한다.

한 회사의 여러대의 컴퓨터가 각각의 다른 사설 IP를 가지고 있어도 NAT 장치를 통해 하나의 공인 IP로 외부 인터넷에 요청할 수 있다.

이처럼 NAT장치를 통해 사설 IP를 공인 IP로 변환하거나 공인 IP를 사설 IP로 변환하는 데 사용된다.

  • 공유기로 여러대의 PC로 인터넷을 사용할 수 있는 이유는 공유기에 NAT 기능이 탑재되어 있기 때문이다.
  • NAT를 이용하면 내부 IP주소와 외부 IP주소가 다르므로 내부 네트워크에 대한 어느정도의 보안이 가능해진다.
  • NAT는 여러명이 동시에 인터넷을 사용하므로 접속하는 호스트 수에 따라 접속 속도가 느려질 수 있다.

IP주소 위치정보

IP주소는 인터넷의 네트워크 주소이므로 이 IP 주소를 사용하여 동이나 구까지 위치 추적이 가능하다.