자 오늘은 Subnet과 관련된 문제를 3개만 풀어보도록 하시죠! 앞으로 3주동안은 '오늘의 학습'과는 별개로 매일 한문제씩 풀게 되실겁니다. 잘 따라오셔야 해요. ^^
1. 192.168.1.0/24 Network으로 5개의 Network을 구성하려고 한다. 각각 인원은 10. 20. 30. 40. 50명이다. 어떻게 나누어야 하는가?
먼저 5개의 Network이 필요하답니다. 그럼, '2^s ≥ 5'이어야 하겠군요. '2^3 = 8'이니 s는 3bit가 됩니다. 그럼 이제 Network을 한번 만들어 볼까요?
※ Network bit = Major Network bit + Subnet bit = 24 + 3 = 27bit 군요!
27bit는 몇개의 IP address로 구성되어 있나요? Host bit가 '32 - 27 =' 5bit이니 하나의 Network이 IP address를 2^5 = 32개씩 가지고 있겠군요. 그럼, IP address 32개마다 Network이 생성되겠군요. 다음과 같이요
192.168.1.0/27
192.168.1.32/27
192.168.1.64/27
192.168.1.96/27
192.168.1.128/27
192.168.1.160/27
192.168.1.192/27
192.168.1.224/27
그런데, 실제로 Host의 IP address로 사용할 수 있는 IP address는 각각의 Network 마다 Network address와 Broadcast address를 제외하여야 하니 '32 - 2 =' 30개겠군요. 그럼, Network address는 위에 구했고, Broadcast address를 구해야 하는데, 어떻게 구하면 될까요?
192.168.1.0/27, 192.168.1.32/27, 192.168.1.64/27 관계를 한번 보시죠!
192.168.1.000 00000 [192.168.1.0] - Network address
192.168.1.000 00001 [192.168.1.1]
192.168.1.000 00010 [192.168.1.2]
192.168.1.000 00011 [192.168.1.3]
192.168.1.000 00100 [192.168.1.4]
...................
192.168.1.000 11110 [192.168.1.30]
192.168.1.000 11111 [192.168.1.31] - Broadcast address
192.168.1.001 00000 [192.168.1.32] - Network address
192.168.1.001 00001 [192.168.1.33]
192.168.1.001 00010 [192.168.1.34]
192.168.1.001 00011 [192.168.1.35]
192.168.1.001 00100 [192.168.1.36]
...................
192.168.1.001 11110 [192.168.1.62]
192.168.1.001 11111 [192.168.1.63] - Broadcast address
192.168.1.010 00000 [192.168.1.64] - Network address
즉, 'Broadcast address + 1' = '다음 Network address'군요.
그럼, 거꾸로 생각하면 '다음 Network address - 1' = 'Broadcast address'가 되겠군요.
다음과 같이 되겠네요
192.168.1.0
192.168.1.32 - 1 = 192.168.1.31 : 192.168.1.0/27의 Broadcast addrees
192.168.1.64 - 1 = 192.168.1.63 : 192.168.1.32/27의 Broadcast addrees
192.168.1.96 - 1 = 192.168.1.95 : 192.168.1.64/27의 Broadcast addrees
192.168.1.128 - 1 = 192.168.1.127 : 192.168.1.96/27의 Broadcast addrees
192.168.1.160 - 1 = 192.168.1.159 : 192.168.1.128/27의 Broadcast addrees
192.168.1.192 - 1 = 192.168.1.192 : 192.168.1.160/27의 Broadcast addrees
192.168.1.224 - 1 = 192.168.1.223 : 192.168.1.192/27의 Broadcast addrees
마지막 IP Address = 192.168.1.255 : 192.168.1.224/27의 Broadcast addrees
이제 Broadcast address와 Network address를 구했으니 그 사이값이 Host의 IP address로 사용할 수 있는 값이겠군요. 그런데, 한가지 문제가 있습니다. 27bit Network은 최대 인원이 30명까지 사용할 수 있는 Network인데 40명인 곳도 있군요. 어떻게 해야 할까요?
잘 생각해보시면 's = 3'으로 했을 때 5개가 아니라 8개의 Network이 생성되었죠. 40명인 곳에 Network을 2개를 주면 어떻게 될까요? 다음과 같이요!
192.168.1.0/27 + 192.168.1.32/27 = 192.168.1.0/26 = 40명 사용
192.168.1.64/27 = 30명 사용
192.168.1.96/27 = 20명 사용
192.168.1.128/27 = 10명 사용
1번문제는 해결되었군요.
왜 192.168.1.0/27 + 192.168.1.32/27 = 192.168.1.0/26 이냐구요? 어제 그림 기억 안나세요? 다시 그려드리죠!
위의 그림처럼 하위 Subnet을 상위 Subnet으로 합칠 수가 있네요.
11000000.10101000.00000001.00000000/27 = 192.168.1.0/27
11000000.10101000.00000001.00100000/27 = 192.168.1.32/27
잘 보시면 '11000000.10101000.00000001.00/26'으로 시작하는 Network을 다 가지고 있죠? 그래서 합칠 수 있는겁니다.
2. 다음 중 IP address가 아닌 것은?
A. 10.1.1.0/16
B. 10.1.255.255/8
C. 192.168.1.192/28
D. 192.168.1.140/27
어떻게 계산할까요? 일단 A과 B는 쉽죠? Host 부분을 bit로 전환 후 전부 '0' or '1'이 아니므로 IP address인 것을 쉽게 알 수 있습니다.
A : Host 부분 = '00000001.00000000' → IP address임
B : Host 부분 = '00000001.11111111.11111111' → IP address임
C : Host 부문 = '000000' → Network address임
D : Host 부문 = '100' → IP address임
C와 D 조금 쉽게 계산하는 방법이 없을까요? 당연히 있죠. C를 먼저 볼까요?
192.168.1.192/28... Network 부분이 28bit이니 Host는 4bit겠군요. 그리고, 4 bit라면 '2^4' = 16개의 IP address 마다 Network을 나눈 것이겠군요. 그럼, 다음과 같이 Network address가 구현될겁니다.
192.168.1.0/28
192.168.1.16/28
192.168.1.32/28
192.168.1.48/28
192.168.1.64/28
192.168.1.80/28
...
192.168.1.224/28
192.168.1.240/28
잘 보시면 16개 마다 Network을 나누었고 '0'부터 시작했으니, Network address는 16의 배수겠군요. 즉, 마지막 8bit의 값을 16으로 나누면 나머지 없이 정확히 나누어 떨어지겠군요.
예를 들어, 문제의 192.168.1.192는 192 / 16 = 12 (나머지 '0')이 되므로 Network address 겠군요.
Broadcast는요? 당연히 나머지가 'IP address - 1'개면 Broadcast 주소가 되겠네요!
ex) 10.1.64.223/29는 IP address 인가?
Host 부분이 3bit 이니 8개 IP address 마다 Network을 나누었군요.
223 / 8 = 27 (나머지 '7') → 나머지가 8보다 1작으니 Broadcast address겠군요.
1번과 2번.. 이해가 되시나요? 이해가 되셨으면 3번을 풀어보시고, 이해가 되지 않으셨으면 이해가 되실 때까지 1, 2번을 풀어보세요!
3. 다음 중 10.1.2.213/27에 속하는 것을 모두 고르시오.
A. 10.1.2.184
B. 10.1.2.221
C. 10.1.2.229
D. 10.1.2.231
E. 10.1.2.216
일단, Network부터 구해야겠네요. 10.1.2.123/27의 Network은 Host 부분이 5bit군요. 5bit면 32개 IP address마다 Network을 나누었네요.
213 / 32 = 6 (나머지 '21')....'32 * 6 = 192'
즉, '10.1.2.192/26' 안에 포함되어 있겠군요. 그리고, '32 * 7 = 224'이므로 다음 Network은 10.1.2.224/27 겠군요. 그럼 10.1.2.192/26 Network의 Broadcast address는 '10.1.2.224 - 1 = 10,1.2.223'이겠군요.
다 끝났습니다. IP address로 사용할 수 있는 것은 [10.1.2.193 ~ 10.1.2.222]!!!
답은 B, E입니다.
넷트레인 교육센터 :: Subnet을 쉽게 하는 방법 (tistory.com)
서브넷팅 계산하기
지난번에는 서브넷이이 무엇인지에 대하여 글을 작성했다면 이번에는 서브넷팅을 계산하는 방법에 대하여 글을 작성해 볼까 합니다.
서브넷팅 계산 하는거는 정보처리 기사 필기 시험에도 꾸준히 나오기에 꼭 알아야 하는 부분입니다.
복잡하고 머리 아프게 2진수로 계산하는 방법이 아니라 다른 방법으로 접근해볼까합니다.
규칙 1.
서브넷 마스크에 올 수 있는 규칙
0 - 1
128 - 2
192 - 4
224 - 8
240 - 16
248 - 32
252 - 64
254 - 128
255 - 256
규칙 2.
총 사용할수 있는 ip에서 2개를 뺀다.
그 이유로는 제일 처음 ip는 network ID로 사용되며
제일 마지막 ip는 Broadcast 주소로 사용되기 때문이다.
지난번에도 작성했던거지만 이것만 어느정도 외우고 있다면 계산하기 편하십니다.
기초1)
ip : 192.168.0.10
subnet : 255.255.255.0 입니다.
이렇게 되어있을때 사용가능한 ip와 유효한 ip는 ?
사용가능 : 192.168.0.0 ~ 192.168.0.255
유효 : 192.168.0.1 ~ 192.168.0.254
입니다.
여기까지는 지난번 글에 작성하였기에 더 설명을 드리지 않겠습니다.
응용문제 1)
pc1 번의 ip는 1.0.0.1
pc2 번의 ip는 1.0.0.190 이고
subnet 는 255.255.255.0일때 같은 네트워크인가요?
정답: 같은 네트워크이며 통신할때 라우터 필요없이 스위치로만 통신할수 있습니다.
이유로는 subnet 끝자리 0으로 끝나고 있습니다.
그 말은 내가 사용할수 있는 아이피는 총 256개 이며
유효한 ip 1~ 255
그렇기에 p1번과 pc2번은 같은 네트워클 사용하고 있습니다.
하지만
subnet : 255.255.255.128이라고 가정하면
2개의 구역 0 ~ 127 , 128 ~ 255 구역으로 나누어야 하기때문에 다른 네트워크를 사용하게 됩니다.
기초2) subnet 255.255.255.224라고 할때 아이피 구역을 나누게 된다면
끝자리가 224 아까 표에서는 네트워크가 8개 있다고 했습니다.
그래서 256/8 = 32개씩 ip가 생성됩니다.
0
1.0.0.0 ~1.0.0.31
1.0.0.1 ~ 1.0.0.30
32
1.0.0.32 ~ 1.0.0.63
1.0.0.33 ~ 1.0.0.62
64
1.0.0.64 ~ 1.0.0.95
1.0.0.65 ~ 1.0.0.94
96
1.0.0.96 ~ 1.0.0.127
1.0.0.97 ~ 1.0.0.126
128
1.0.0.128 ~ 1.0.0.159
1.0.0.129 ~ 1.0.0.158
160
1.0.0.160 ~ 1.0.0.191
1.0.0.161 ~ 1.0.0.190
192
1.0.0.192 ~ 1.0.0.223
1.0.0.193 ~ 1.0.0.222
224
1.0.0.224 ~ 1.0.0.255
1.0.0.225 ~ 1.0.0.254
이렇게 쓰면 규칙을 발견할수 있습니다.
사용가능한 ip의 주소의 첫번쨰는 무조건 짝수가 오며 끝자리는 무조건 홀수가 오게 됩니다.
응용1) i.p : 1.0.0.0
s.m : 255.255.254.0
아까와는 다르게 서브넷 마스크의 옥텟 3번쨰가 254로 온것을 볼수 있습니다.
그렇게 되면 아이피 주소 2번째 옥텟까지는 고정으로 두시고 3번째부터 변동이 생긴다고 아시면 됩니다.
우선 3번째 옥텟이 254 그렇게 되면 128로 나누게 되어 2개씩 할당하여 아이피를 나누게 됩니다.
0 1.0.0.0 ~ 1.0.1.255
사용가능 : 1.0.0.1 ~ 1.0.1.254
2 1.0.2.0 ~ 1.0.3.255
사용가능 : 1.0.2.1 ~ 1.0.0.3.254
4 1.0.4.0 ~ 1.0.5.255
사용가능 : 1.0.4.1 ~ 1.0.5.254
========================================
250 1.0.250.0 ~ 1.0.251.255
사용가능 : 1.0.250.1 ~ 1.0.251.254
252 1.0.252.0 ~ 1.0.253.255
사용가능 : 1.0.252.1 ~ 1.0.253.254
254 1.0.254.0 ~ 1.0.255.255
사용가능 : 1.0.254.1 ~ 1.0.255.254
사용가능한 ip 처음 3곳과 마지막 3곳을 작성한 것입니다.
어느정도 이해가 가능하시나요?
그럼 이걸 다 응요한 문제를 풀어보겠습니다.
응용 2) 문제 1.
1.1.66.0 //22 사용하며 컴1 , 서버1 이 있따.
- IP Address 는 네트워크 대역을 앞쪽을 순차적 사용
- gateway의 값은 해당 네트워크 대역의 가장 끝 ip 사용
- dns의 값은 컴1의 ip address 와 동일
이때 서버 1번과 컴1의 아이피와 게이트웨이를 할당하시오.
우선 ip 주소는 1.1.66.0 이고 서브넷은 /22 = 255.255.252.0 입니다.
4개씩 할당하게 됩니다.
그래서
i.p = 1.1.66.0 이고
서브넷은 255.255.252.0
구역을 나눠보면
0
1.1.0.0 ~ 1.1.3.255
사용가능 : 1.1.0.1 ~ 1.1.3.254
4
1.1.4.0 ~ 1.1.7.255
사용가능 : 1.1.4.1 ~ 1.1.7.254
8
1.1.8.0 ~ 1.1.11.255
사용가능 : 1.1.8.1 ~ 1.1.11.254
64
1.1.64.0 ~ 1.1.67.255
사용가능 : 1.1.64.1 ~ 1.1.67.254
문제에서 1.1.66.0 이 포함되는 아이피는 바로 위에 작성된 곳이 포함되니
앞쪽부터 순차적으로 사용하면
컴1 i.p : 1.1.64.1
gateway : 1.1.67.254
dns : 1.1.64.1
서버1 i.p : 1.1.64.2
gateway : 1.1.67.254
dns : 1.1.64.1 이 됩니다.
네트웍의 기초 - 서브넷팅 계산하기 (tistory.com)
'⚡네트워크' 카테고리의 다른 글
SNMP 란? (0) | 2022.01.12 |
---|---|
쉽게 이해하는 네트워크 12. TCP/IP 모델의 인터넷 계층과 IP 프로토콜 (0) | 2021.10.17 |
VMware Network Editor 통한 가상머신 네트워크 정의 (0) | 2021.02.19 |
DNS에서 CNAME과 A 레코드의 차이 (0) | 2021.01.30 |
4 Way-hand-shake (0) | 2021.01.22 |