앞에서 bismasking(비트마스킹)을 이용하여 네트워크를 분할하는 방법에 대해 다루었다.
비트마스킹 기법은 분할한 네트워크들의 서브넷 마스크가 모두 같았는데,
사실 서브넷 마스크를 다르게 설정해서 분할할 수도 있다.
이러한 방법을 VLSM(Varieble Length Subnet masks)라 하며, 이름 뜻 그대로 서브넷 마스크의 길이를 다양하게 설정해 네트워크를 분할하는 기법이다.
예시와 함께 살펴보자.
할당 가능한 IP주소가 1.1.1.0 ~ 1.1.1.255 범위라 할 때, 다음 네트워크들에게 IP주소를 어떻게 할당해야 할까?
net A : 80 hosts
net B : 38 hosts
net C : 50 hosts
비트마스킹 기법으로 서브넷 마스크 길이를 26으로 설정하여 네트워크를 4개로 분할하면 될 것처럼 보인다.
하지만 네트워크를 4개로 분할하면 각 네트워크에는 64개의 IP주소만 할당할 수 있기 때문에,
A 네트워크는 호스트에 할당할 IP주소가 부족하다. 이러한 경우 비트마스킹은 좋은 방법이 아니다.
그럼 VLSM을 사용해보자.
말이 좀 어려워 보이지만 그냥 서브넷 마스크의 길이를 서로 다르게 설정해서 네트워크를 분할하는 것이다.
A 네트워크는 최소 80개의 IP주소가 필요하므로 서브넷 마스크 길이를 25로 설정하여
128개의 IP주소를 할당한다. ('/' 기준 왼쪽까지가 넷마스크 길이, 즉 네트워크 주소를 가리키는 비트의 범위다.)
네트워크 A
=> 서브넷 마스크 25로 설정, 128개 IP주소 할당
네트워크 주소
1.1.1.0 (00000001 00000001 00000001 0/0000000)
서브넷 마스크
255.255.255.128 (11111111 11111111 11111111 1/0000000)
호스트 주소 범위 (총 128개의 IP주소)
1.1.1.0 ~ 1.1.1.127 (00000001 00000001 00000001 0/0000000 ~ 00000001 00000001 00000001 0/1111111)
'/' 표시는 그냥 내가 보기 편하려고 임의로 삽입한 문자다. 표준 표기법이 아니다.
사실 IP주소를 많이 다뤄보지 않은 티가 나는 것이다. 저런 표시 없이도 알아볼만큼 숙달되어야 한다.
물론 서브넷 마스크 길이를 24로 설정하여 256개를 할당해도 되지만, 낭비되는 IP주소가 많아질 것이다.
나머지 B, C 네트워크는? 나머지 IP주소를 64개씩 할당하면 된다.
넷마스크를 26으로 설정해 분할하자.
네트워크 B
=> 서브넷 마스크 26으로 설정, 64개 IP주소 할당
서브넷 마스크
255.255.255.192 (11111111 11111111 11111111 11/000000)
호스트 주소 범위 (총 128개의 IP주소)
1.1.1.128 ~ 1.1.1.191 (00000001 00000001 00000001 10/000000 ~ 00000001 00000001 00000001 10/111111)
네트워크 주소
1.1.1.128 (00000001 00000001 00000001 10/000000)
네트워크 C
=> 서브넷 마스크 26, 64개 IP주소 할당
서브넷 마스크
255.255.255.192 (11111111 11111111 11111111 11/000000)
호스트 주소 범위
1.1.1.192 ~ 1.1.1.255 (00000001 00000001 00000001 11/000000 ~ 00000001 00000001 00000001 11/111111)
네트워크 주소
1.1.1.192 (00000001 00000001 00000001 11/000000)
결과적으로 총 256개의 IP주소 중 128개를 네트워크 A에, 나머지 128개를 네트워크 B, C에 각각 64개씩 분할하였다.
네트워크 A는 서브넷 마스크를 25로,
네트워크 B, C는 서브넷 마스크를 26으로 각각 다르게 설정하여 네트워크를 분할하였다.
서브넷 마스크를 다르게 설정한 VLSM 기법을 이용한 것이다.
그림으로 표현하면 다음과 같다.
또는 서브넷 마스크를 26으로 설정해서 분할한 4개의 IP주소 범위를 64개씩 나눈 후,
그 중 2개를 네트워크 A에게 주고 (네트워크 주소 1.1.1. ...00, 1.1.1. ...01)
네트워크 B, C는 한개씩 주었다고 이해할수도 있을 것 같다.
(B: 네트워크 주소 1.1.1. ...10, C: 네트워크 주소 1.1.1. ...11)
예시를 하나 더 살펴보자.
사용 가능한 IP주소의 범위가 1.1.0.0 ~ 1.1.255.255일 때,
다음 환경에 맞도록 네트워크를 분할하려면 어떻게 해야할까?
net A : 200 hosts
net B : 140 hosts
net C : 300 hosts
오. 이번엔 사용할 수 있는 IP주소가 많다. IP주소가 256개씩 256묶음 있다고 생각하면 쉽다.
여담이지만 이만큼 많은 IP주소는 웬만한 곳은 받아올 수 없다.
제법 규모가 있는 기관에서 이정도의 IP를 받아 운용한다고 한다.
어쨌든 우리가 머기업 네트워크 관리자라고 생각하며 분할해보자.
호스트 수가 많은 네트워크 C를 먼저 할당하자.
호스트 수가 많은 네트워크부터 할당하는 편이 효율적이다.
장바구니에 큰 물건부터 담아야 꽉꽉 많이 눌러담을 수 있는 것과 같은 이치다.
전문적인 표현으로 절편을 최소화시킬 수 있다고 하는데... 무슨 말인지는 알겠으나 느낌이 잘 오지 않는다.
호스트가 300개 있는 네트워크 C는 서브넷 마스크를 24로 설정하면 안될 것 같다.
x.x.x.0 ~ x.x.x.255 범위, 총 256개의 IP로는 부족하다.
서브넷 마스크를 23으로 설정해서 512개의 IP주소를 할당한다.
네트워크 C
=> 서브넷 마스크 23으로 설정, 512개 IP주소 할당
서브넷 마스크
255.255.254.0 (11111111 11111111 1111111/0 00000000)
호스트 주소 범위 (총 512개의 IP주소)
1.1.0.0 ~ 1.1.1.255 (00000001 00000001 0000000/0 00000000 ~ 00000001 00000001 0000000/1 11111111)
네트워크 주소
1.1.0.0 (00000001 00000001 0000000/0 00000000)
나머지 네트워크 A, B는 256개씩 할당하면 충분하다.
서브넷 마스크를 24로 설정해 할당한다.
네트워크 A
=> 서브넷 마스크 24로 설정, 256개 IP주소 할당
서브넷 마스크
255.255.255.0 (11111111 11111111 11111111 / 00000000)
호스트 주소 범위 (총 128개의 IP주소)
1.1.2.0 ~ 1.1.2.255 (00000001 00000001 00000010 / 0000000 ~ 00000001 00000001 00000010 / 11111111)
네트워크 주소
1.1.2.0 (00000001 00000001 00000010 / 00000000)
네트워크 B
=> 서브넷 마스크 24, 256개 IP주소 할당
서브넷 마스크
255.255.255.0 (11111111 11111111 11111111 / 00000000)
호스트 주소 범위
1.1.3.0 ~ 1.1.3.255 (00000001 00000001 00000011 / 00000000 ~ 00000001 00000001 00000011 / 11111111)
네트워크 주소
1.1.3.0 (00000001 00000001 00000011 / 00000000)
결과적으로 네트워크 A는 서브넷 마스크를 23으로 설정하여
1.1.0.0 ~ 1.1.0.255
1.1.1.0 ~ 1.1.1.255
(00000001 00000001 0000000/0 00000000 ~ 00000001 00000001 0000000/1 11111111)
총 512개의 IP주소를 할당해주었고,
네트워크 B, C는 각각
B: 1.1.2.0 ~ 1.1.2.255 (00000001 00000001 00000010 / 00000000 ~ 00000001 00000001 00000010 / 11111111)
C: 1.1.3.0 ~ 1.1.3.255 (00000001 00000001 00000011 / 00000000 ~ 00000001 00000001 00000011 / 11111111)
범위의 256개 IP주소를 할당하였다.
아직 비트 문자열을 다루는게 헷갈린다. 연습해서 하루빨리 익숙해져야겠다.
'Network > old' 카테고리의 다른 글
서킷 스위칭과 패킷 스위칭 (0) | 2023.01.05 |
---|---|
NAT (Network Address Translation) (0) | 2023.01.05 |
네트워크 분할법 1 - bitmasking (0) | 2023.01.03 |
IP주소의 개념과 구성 (0) | 2023.01.01 |
IP Address, Subnet Mask, Gateway (0) | 2022.12.21 |