IP 주소란 무엇일까? 일상 생활에서 사용되는 전화번호나 우편주소의 공통점은 서로 구분된다는 것이다. 그리고 일정한 규칙을 가지고 있다는 것이다. TCP/IP라는 프로토콜을 만들 때 이 프로토콜을 사용하는 모든 장비들을 구분해 주기 위해 만들어낸 것이 바로 IP 주소이다.
IP 주소는 이진수 32자리로 되어 있고 이진수 8자리마다 점을 찍어 구분하며 이 8자리를 옥테트(octet)라고 부른다.
라우터는 네트워크 사이에 데이터 전송을 수행하는 기기이다. IP 주소를 사용하여 네트워크 간의 데이터 전송을 수행하며 이를 ‘라우팅’이라고 한다.
라우터에 IP를 배정하는 규칙을 알아보기 위해 아래와 같이 네트워크를 구성했다고 가정하자. (사진 속 라우터는 시스코 2501)
라우터에 보면 이더넷 인터페이스, 시리얼 인터페이스가 있는데 이더넷 인터페이스는 내부 네트워크에 연결되는 라우터의 포트이고 시리얼 인터페이스는 외부 즉 인터넷쪽으로 연결되는 포트를 의미한다. 위 그림대로라면 라우터에는 2개의 IP가 할당될 것이다. 그렇다면 이 2개의 주소는 어떻게 할당할까?
먼저 이더넷 인터페이스의 경우 내부 PC용으로 부여받은 주소의 맨 앞 번호를 사용한다. 예를 들어 203.120.150.1~203.120.150.255까지라면 라우터는 203.120.150.1이 부여된다.
그러면 시리얼에는 어떤 주소를 부여할까? 이 주소는 마음대로 부여할 수 있는 주소가 아니다. 라우터가 접속하는 상대(ISP 업체) 라우터의 시리얼 인터페이스와 IP 주소를 서로 맞추어야 하기 때문이다. 시리얼의 경우 상대편 라우터의 시리얼과는 같은 네트워크가 되어야 한다. 예를 들어 상대편 라우터의 203.150.150.5에 서브넷 마스크가 255.255.255.252라면 우리 라우터의 시리얼은 203.150.150.6에 서브넷 마스크는 255.255.255.252가 되는 것이다.
<aside> 🗒️ 라우터와 모뎀의 차이
비교의 근거 | 모뎀 | 라우터 |
---|---|---|
의미 | 모뎀은 신호 변조기와 신호 복조기가 결합된 장치이다. | 라우터는 여러 네트워크를 서로 연결하는 장치이다. |
작업 | 모뎀은 컴퓨터의 디지털 신호를 전화선의 아날로그 | |
신호로 또는 그 반대로 변환한다. | 데이터 패킷을 검사하여 목적지 컴퓨터에 도달하기 위한 | |
경로를 결정한다. | ||
목적 | 모뎀은 요청된 정보를 인터넷에서 네트워크로 가져온다. | 라우터는 요청된 정보를 컴퓨터에 배포한다. |
인터넷 | 모뎀은 컴퓨터를 ISP에 연결하기 때문에 인터넷에 | |
엑세스하는 데 필수적이다. | 라우터를 사용하지 않고 인터넷에 접속할 수 있다. | |
층 | 모뎀은 데이터 링크 계층에서 작동한다. | 라우터는 네트워크 계층에서 작동한다. |
보안 | 모뎀은 데이터 패킷을 검사하지 않는다. 따라서 보안 | |
위협은 항상 존재한다. | 라우터는 모든 데이터 패킷을 전달하기 전에 검사하여 | |
위협을 확인한다. | ||
배치 | 모뎀은 전화선과 라우터 사이 또는 컴퓨터에 직접 | |
연결된다. | 라우터는 모뎀과 컴퓨터 네트워크 사이에 배치된다. | |
</aside> |
IP 주소는 32자리 2진수로 구성되어 있는데 네트워크 부분(Network Part)과 호스트 부분(Host Part)으로 나눌 수 있다. 먼저 네트워크란 하나의 브로드캐스트 영역이라고 생각하면 된다. 간단히 말하자면 하나의 PC가 데이터를 뿌렸을 때 그 데이터를 라우터를 거치지 않고도 바로 받을 수 있는 영역이라는 뜻이다. 다음으로 호스트란 각각의 PC 또는 장비라고 생각하며 된다.
따라서 어떤 네트워크에서든지 “하나의 네트워크”에서는 네트워크 부분은 모두 같아야 되고 호스트 부분은 모두 달라야 정상적인 통신이 일어난다는 것이다. 예를 들어 한 사무실에서 쓰는 IP 주소가 203.240.100.1에서 203.240.100.255까지라면 이중에서 203.240.100 부분은 네트워크 부분이다. 마지막 부분의 경우는 호스트 부분이 된다.
IP 주소는 32자리 이진수로 구성되어 있고 네트워크 부분과 호스트 부분으로 나누어진다. 그렇다면 네트워크 부분과 호스트 부분은 어떻게 나눌 수 있을까? 나누는 기준을 약속한 것이 바로 IP 주소의 클래스(Class)이다. 클래스는 A부터, B, C, D, E로 구분되는데 D,E의 경우는 멀티캐스트용, 연구용으로 사용되기에 잘 사용되지 않는다.
1) A 클래스
하나의 네트워크가 가질 수 있는 호스트 수가 가장 많은 클래스이다. IP 주소를 이진수로 표현했을 때 항상 0으로 시작한다. 즉 0xxx xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx 와 같이 구성된다. 해당 범위 내에서 계산해보면 가장 작은 값은 0.0.0.0, 가장 큰 값은 127.255.255.255이다. 여기서 또 한가지 A 클래스의 중요한 규칙이 나온다. A 클래스의 경우는 앞의 8비트가 네트워크 부분을 나타내고 나머지 24비트가 호스트 부분을 나타낸다. 그래서 A 클래스는 가장 작은 네트워크 1.0.0.0 (0.0.0.0은 제외)에서 가장 큰 네트워크 126.0.0.0 (127은 제외)까지로 규정된다. 참고로 네트워크를 나타낼 때는 호스트 부분을 모두 0으로 쓴다.
정리하면 다음과 같다.