5장 IP

강한친구·2022년 1월 25일
0

Network

목록 보기
4/12

IP란?

집을 구분하기 위해서 모든집주소가 다른것처럼, IP역시 다 다르다.

IP의 구성

원래의 IP는 2진수로 표현한다. 2진수 32자리수로 표현하고 2^32승개 - 못쓰는종류 몇가지를 제외 총 42억 9000개정도이다.
하지만 우리가 보는 IP는 125.126.255.1 같이 십진수로 표현되어있다. 이는 알아보기 편하게 옥텟을 찍어서 IP를 구분해주는것이다.

라우터에서의 IP주소

라우터의 이더넷용 IP주소는 우리가 내부에서 사용하기 위해 부여받은 IP주소중 하나를 배정받는다.
보통 가장 앞의 주소를사용하고 그 주소가 라우터의 이더넷주소가 된다.

시리얼의 경우 ISP가 제공해주는 시리얼 인터페이스와 IP주소를 맞추게 된다.

네트워크 / 호스트

네트워크란 하나의 브로드캐스트 영역이다. 별도의 라우터 전달없이 자신들끼리 통신이 가능한 환경을 말한다. 따라서 같은 네트워크에 있는 IP라면 특정 부분까지는 주소가 모두 동일하게 나온다. 예를 들어 147.47이 서울대학교의 IP이고 모든 서울대 네트워크는 147.47.XX.XX 같은 IP주소를 사용하는 것이다.

클래스

IP주소는 클래스들로 구분이 된다.
A B C D E 가 있다.

클래스 A

하나의 네트워크가 가질 수 있는 호스트수가 가장 많은 클래스이다. 32개의 이진수중에 맨 앞자리가 0으로 고정되어있고 그 밖에는 자유롭게 사용가능하다.
클래스 A에서는 앞의 8비트 (1개의 옥텟)이 네트워크 부분이고 나머지가 호스트 부분이다.
클래스 A에서는 1.0.0.0과 126.0.0.0까지 사용한다.

클래스 B

클래스 B에서는 앞이 무조건 10으로 시작한다.
따라서 앞의 16비트 (2옥탯)은 네트워크 부분이고 나머지 절반은 호스트 부분이다. 128.0.0.0 부터 191.255.0.0을 사용한다.

클래스 C

앞자리가 110으로 시작한다.
따라서 24비트, 3옥텟이 네트워크 부분이고 나머지 한 옥텟이 호스트 부분이다. 네트워크중 호스트가 가장 적다.
192.0.0.0 ~ 223.255.255.0까지 사용가능하다

그 밖의 클래스

클래스 D의 경우 224~239 까지이고 멀티캐스트용도로 사용한다
클래스 E의 경우 240~255 까지이고 연구용 주소이다.

IP의 활용

PC 가 90대있고 스위치가 2개 라우터가 1개있는 현장이라고 가정해보자
이때 클래스 C를 배치하는것이 가장 효율적인 배치라고 할 수 있다

상대의 라우터 주소가 210.11.2.1 이라면, 우리는 이와 같은 네트워크 안에서 사용을 해야한다. 따라서 클래스 C이니깐 210.11.2 까지는 같은 주소를 써야한다

기본 게이트웨이

말 그대로 기본이 되는 문이다. 이것이 없으면 인터넷을 할 수가 없다. 네트워크 내부 통신을 진행 한 후 그 안에 맥어드레스가 없다면 이 기본 게이트웨이를 통해 다른 네트워크로 이동하게 된다. 이 기본 게이트웨이는 라우터의 이더넷 인터페이스가된다.

서브넷 마스크

서브넷이란 IP주소를 받고 이를 가공하는것이다.
만약 우리가 클래스 B를 할당받고 그걸 그대로 쓰려고 하면 브로드캐스트 부담이 너무 커서 사용할수가 없다.
즉, 주어진 IP주소를 네트워크 환경에 맞게 나누어 주기 위해서 붙여주는 이진수의 조합이라고 할 수 있다.

예시

150.150.0.0 이라는 클래스 B를 받았다고 하자.
이를 서브넷해서 사용하려 한다. 이떄 서브넷 마스크는 255.255.255.0 이다.
이렇게 네트워크를 더 작게 나누고 이를 라우터로 연결 서로 통신하게 하는것이다.

Default Subnet Mask

만약 클래스 C를 사용해서 210.100.100.1 을 쓴다고 하면 254개의 호스트를 가진다. 따라서 별로 나눌 필요가 없어보이지만 이럴때도 서브넷 마스크를 사용한다. 이 서브넷 마스크를 기본 서브넷이라 한다.

A의 경우 - 255.0.0.0
B의 경우 - 255.255.0.0
C의 경우 - 255.255.255.0 이다

이 디폴트 서브넷을 고쳐서 쓰면 네트워크를 나눌 수 있는것이다.
서브넷 마스크는 이진수가 1인 부분이 네트워크가 되고, 나머지가 호스트가 된다.

Subnetting

IP주소, 그리고 서브넷 마스크를 AND연산 하는것이 바로 서브넷으로 나눠진 새로운 IP주소가 된다.

150.150.100.1 에 255.255.0.0 을 씌운다고 해보자
네트워크 부분은 전부 1 이기에 원래의 IP주소가 그대로 내려오고, 호스트 부분은 0이라서 전부 0으로 변해서 내려온다
이렇게 해서 나온 값 150.150.0.0이 바로 150.150.100.1의 네트워크 부분이 되는것이다.
만약 여기서 다른 서브넷마스크를 이용 (255.255.255.0)을 쓴다고 하면 값이 150.150.100.0으로 변하게 된다

이러한 일련의 과정을 서브네팅이라고 한다

서브넷 마스크의 기본 성질

독립

만약 클래스의 B의 두 주소가 있다고 하자
150.100.0.0 과 150.100.100.1 이다.
이때 이 둘은 같은 네트워크 150.100 에 거주하기에 서로 라우터없이 통신이 가능하다
하지만 이를 255.255.255.0으로 나눠주면, 네트워크 부분이 3자리가 되고
150.100.100 / 150.100.1200으로 바뀌게 된다.

이는 즉 이들의 네트워크가 분리되었음을 의미하고 서로 라우터없이는 통신이 불가능함을 나타낸다.

연속 1

서브넷 마스크는 이진수로 작성했을때 연속된 1이 나와야한다.
255.255.255.10은 서브넷으로 쓸 수 없다. 이를 바꿔보면 1010이라는 비연속적인 서브넷이 나오기 때문이다. 마찬가지로 0000 1111 이 나오는 255.255.255.15도 사용 불가능하다.

실습

210.100.1.0 (서브넷 255.255.255.0)을 받아서 이를 30개의 호스트를 가지는 4개의 네트워크를 구분하려고 한다.

이때 우선 호스트수를 신경써야한다.
사영학능한 호스트수는 2^ 호스트비트수 - 2가 된다.
따라서 2^5 - 2를 해야 30개의 호스트를 쓸 수 있다.

210.100.1.0 중에서 맨 마지막 부분만을 이진수로 바꾸면 210.100.1.0000 0000이 된다. 이떄 앞에 3자리는 서브넷, 뒤에 5자리는 네트워크가 된다.

따라서 이러한 네트워크를 구성하기 위한 서브넷은 255.255.255.1110 0000 이 된다.
이를 다시 십진수로 전환하면 255.255.255.224이다.
이를 가지고 서브넷을 만들 때,

1) 호스트가 전부 0이면 네트워크이다
2) 호스트가 전부 1이면 브로드캐스트 주소이다.

0개의 댓글