< IP 주소의 클래스 >
IPv4는 32비트, 네트워크 ID를 크게 하거나 호스트 ID를 작게 만들어 네트워크 크기를 조정할 수 있음.
이때 네트워크 크기를 클래스라는 개념으로 구분하고 있다.
클래스 표
A 클래스 - 대규모 네트워크 주소 / 처음 8비트가 네트워크 ID, 나머지 24비트가 호스트 ID
B 클래스 - 중형 네트워크 주소 / 처음 16비트가 네트워크 ID, 나머지 16비트가 호스트 ID
C 클래스 - 소규모 네트워크 주소 / 처음 24비트가 네트워크 ID, 나머지 8비트가 호스트 ID
D 클래스 - 멀티캐스트 주소
E 클래스 - 연구 및 특수용도 주소
일반 네트워크에서는 A~C 클래스까지 사용할 수 있다.
A 클래스: 첫 옥텟(8비트)의 범위는 00000001 ~ 01111111, 10진수로 1~127까지 가능
2~4옥텟의 범위는 각각 00000000~11111111, 10진수로 0~255이다.
따라서 A 클래스의 IP 범위는 1.0.0.0 ~ 127.255.255.255이다.
B 클래스의 1옥텟의 범위는 10000000 ~ 10111111, 10진수로 128~191
따라서 B 클래스 IP범위는 128.0.0.0 ~ 191.255.255.255이다.
B 클래스는 처음 16비트가 네트워크 ID이기때문에 두번째 숫자까지가 네트워크 ID이다.
C 클래스의 1옥텟 범위는 11000000 ~ 11011111, 10진수로 192~223
따라서 C 클래스의 IP 범위는 192.0.0.0 ~ 223.255.255.255
C 클래스는 세번째 숫자까지가 네트워크 ID이다.
정리
A 클래스의 IP 범위는 1.0.0.0 ~ 127.255.255.255이다.
B 클래스 IP범위는 128.0.0.0 ~ 191.255.255.255이다.
C 클래스의 IP 범위는 192.0.0.0 ~ 223.255.255.255
이 전체 범위가 공인 IP 주소와 사설 IP 주소로 다시한번 나뉜다.
A 클래스의 사설 IP 주소 : 10.0.0.0 ~ 10.255.255.255
B 클래스의 사설 IP 주소: 172.16.0.0 ~ 172.31.255.255
C 클래스의 사설 IP 주소: 192.168.0.0 ~ 192.168.255.255
이 범위를 제외한 나머지가 공인 IP 주소의 범위가 된다.
가정의 랜에서는 주로 C 클래스의 사설 IP주소인 192.168.x.x 가 사용된다.
<네트워크 주소와 브로드캐스트 주소>
IP주소에는 네트워크 주소와 브로드캐스트 주소가 있음.
이 두 주소는 특별해서 컴퓨터나 라우터가 자신의 IP로 사용하면 안되는 주소임.
C클래스 사설 IP 주소가 있다고 예시를 들면,
192.168.1.0
네트워크 주소 : 호스트 ID가 10진수 0(2진수 00000000)인 주소
브로드캐스트 주소 : 호스트 ID가 10진수 255(2진수 11111111)인 주소
네트워크 주소는 전체 네트워크에서 작은 네트워크를 식별하는 데에 사용. 호스트 ID가 10진수로 0이면 그 네트워크 전체를 대표하는 주소가 됨. 예를 들어 192.168.1.1 ~ 192.168.1.6의 IP 주소를 가진 컴퓨터는 192.168.1.0의 네트워크에 있다고 할 수 있음.
브로드 캐스트 주소는 네트워크에 있는 컴퓨터나 장비 모두에게 한번에 데이터를 전송할 때 사용. 192.168.1.255의 브로드캐스트 주소로 데이터를 전송하면 네트워크 안에 있는 모든 컴퓨터가 데이터를 받게 된다.
<서브넷>
네트워크에 컴퓨터 수가 너무 많으면 브로드캐스트 패킷을 전송할 때 모든 컴퓨터에게 패킷이 전송되고 네트워크가 혼잡해질 수 있음. 그럴때 대규모 네트워크를 작은 네트워크로 분할하는 것을 서브넷팅(subneting)이라고 하고 분할된 네트워크를 서브넷(subnet)이라고 한다.
이때 기존에 네트워크 ID + 호스트 ID로 구성되어 있던 IP 주소가
네트워크 ID, 서브넷 ID, 호스트 ID로 나눠지게 된다. 방식은 호스트 ID에 사용되던 비트를 빌려 서브넷으로 만든다.
IP 주소를 서브넷팅하면 어디까지가 네트워크 ID고 어디부터가 호스트 ID인지 판단하기 어려울 때가 있다.
이때 서브넷 마스크라는 값을 사용함.
서브넷 마스크는 네트워크 ID, 호스트 ID를 식별하기 위한 값으로서, 다음과 같다. 네트워크면 1, 호스트면 0
A 클래스의 서브넷 마스크 : 11111111 00000000 00000000 00000000 = 255.0.0.0 -> 프리픽스 표기법 : /8
B 클래스의 서브넷 마스크 : 11111111 11111111 00000000 00000000 = 255.255.0.0 -> 프리픽스 표기법 : /16
C 클래스의 서브넷 마스크 : 11111111 11111111 11111111 00000000 = 255.255.255.0 -> 프리픽스 표기법 : /24
C 클래스의 IP 주소를 서브넷팅해서 네트워크 ID 24비트, 서브넷 ID 4비트, 호스트 ID 4비트가 되었다면 서브넷 마스크는
11111111 11111111 11111111 11110000 = 255.255.255.240, 프리픽스 표기법으로는 /28이 된다.
<라우터>
라우터는 네트워크를 분리할 수 있음. 한 컴퓨터에서 다른 네트워크로 데이터를 보내려면 라우터의 IP 주소를 설정해야 한다. 이것은 네트워크의 출입구를 설정하는 것으로 기본 게이트웨이(default gateway)라고 한다. 라우터의 IP 주소를 설정해야 하는 이유는 컴퓨터는 다른 네트워크로 전송할 때 어디로 전송해야 하는 지 알지 못하기때문에 일단 라우터로 데이터를 전송해야 하기 때문이다.
하지만 이것만으로는 데이터를 원하는 컴퓨터에 보낼 수 없다. 라우팅 기능이 필요하다.
라우팅은 경로 정보를 기반으로 현재의 네트워크에서 다른 네트워크로 최적의 경로를 통해 데이터를 전송하는데, 이 정보가 등록되어 있는 테이블이 라우팅 테이블이다.
라우팅 테이블은 수동/자동으로 등록할 수 있지만 대규모 네트워크에는 자동이 더 적합하다.
라우터 간에 라우팅 정보를 교환하기 위한 프로토콜을 라우팅 프로토콜이라하고 RIP, OSPF, BGP 등이 있다.
댓글