티스토리 뷰

Network

서브넷마스크(Subnetmask)

gluecode 2019. 4. 20. 04:34

네트워크에서 빠지면 안되는 필수는 서브넷마스크입니다.

이 서브넷마스크로 인하여 다양하게 IP들을 나누어 사용할 수 있으며, 이로 인해 좀 더 효율적으로 Infra를 구성 할 수 있습니다.

서브넷마스크의 핵심은 네트워크영역을 분리시켜주는것 입니다.

아주 필수적인 요소지만, 처음 공부를 시작할 때, 가장 어려운 것 또한 서브넷마스크입니다.

이번 포스팅은 그래서 서브넷마스크 자체만 가지고 설명해 보겠습니다. (서브넷팅 X)

 

 

 

 

 

서브넷마스크에서 중요한것은 컴퓨터는 2진수로된 기계라는 것입니다.

 

10진수는 못알아먹죠. 그래서 0과 1로만 표현합니다.

 

하지만 사람은 10진수를 자주써서 2진수로 얘기를 하면 100명 중 99명은 헷갈릴겁니다.

 

그래서.. 컴퓨터는 2진수밖에 못알아먹으니 백보양보해서 2진수를 보고 십진수로 바꿔 사용하는겁니다.

 

자 그럼 설명 보실까요?

 

11111111.11111111.11111111.11111111

 

ipv4에서 총 32비트죠.

 

저기 1하나당 1비트. 한 옥텟당 8비트   ## 옥텟(Octet) : 8비트를 묶은 영역. 점을 기준으로보시면 됩니다.

 

총 4옥텟 즉, 32비트가 됩니다. (4옥텟=8+8+8+8  <-- 8이란 숫자는 1이 8개를 의미함. "갯수"를 의미.)

 

여기서 맨왼쪽의 1이 128

 

그 다음             1이 64

 

그 다음             1이 32

 

쭉 가서

 

마지막 8번째 1이  숫자 1이 됩니다.

 

뭔가 발견하셧죠.

 

절반씩으로 바껴지죠.

 

어때요 감이 오시나요?

 

예제를 보겠습니다.

 

ex-1)

/32 = ?              <-- 여기서 /xx를 프리픽스(prefix)라고도 부릅니다.

                                       /32는 32프리픽스 혹은 프리픽스 32라고 부르기도하지만, 이렇게 말씀하시는 분들은 경험상 한 분도 못봤고,

                                        대부분은 32비트라고 부릅니다.

답 : 255.255.255.255

 

ex-2)

 

/25=?

 

답 : 255.255.255.128

 

ex-3)

 

/20 = ?

 

답 : 255.255.240.0

 

ex-4)

 

/12 = ?

 

답 : 255.240.0.0

 

ex-5)

 

/5 = ?

 

답 : 248.0.0.0

 

 

이 문제를 풀때 팁은

 

옥텟마다 구분을 짓습니다. 어렵다면 옥텟마다 다른 영역이라고 생각하고 푸는겁니다.

(하지만 절대 아닙니다. IPv4 헤더안에 "포함"된 같은놈들이에요. 어렵다면 다르다고 생각하세요.)

 

예를들어 5번문제의 /5는

 

1이 5개라는 뜻입니다.

즉,

 

11111000.00000000.00000000.00000000 입니다.

이것이 /5이죠.

 

그렇다면 아까 위에 설명한것처럼 하나의 옥텟당 맨 왼쪽부터 128, 64, 32, ......... 마지막 8번째는 1이 되죠.

 

즉 11111000.00000000.0000000.0000000은

 

128+64+32+16+8+0+0+0 . 0+0+0+0+0+0+0+0 . 0+0+0+0+0+0+0+0 . 0+0+0+0+0+0+0+0

 

이 되어서

 

계산해보면 248.0.0.0이 됩니다.

 

즉 , 그냥 이진수를 십진수로 바꿔서 푸는거에요.

 

한 문제만 보면 헷갈리니 3번도 보겠습니다.

 

/20이네요.

 

그럼 1이 20개 있는거니까

 

11111111.11111111.11110000.00000000

 

128+64+32+16+8+4+2+1 . 128+64+32+16+8+4+2+1 . 128+64+32+16+0+0+0+0 . 0+0+0+0+0+0+0+0

 

이 됩니다.

 

(처음하시면 절대로 암산하지말고 이렇게 해놓고 푸세요. 그러다 익숙해지면 암산도 됩니다.)

 

 

 

그럼 이것은 옥텟별로 풀어보죠.

처음에 1옥텟(첫번째 옥텟)을 보죠.

1이 8"개"네요.

 

그럼 11111111<--이 2진수를 십진수로 바꾸죠 이제.

 

128+64+32+16+8+4+2+1=255가 되네요!

 

즉 1옥텟은 255입니다.

 

 

 

두번째 옥텟을 볼까요?(2옥텟)

 

첫번쨰와 같네요. 1이 8"개"입니다.

 

11111111<--이걸 십진수로 바꿉니다.

 

128+64+32+16+8+4+2+1= 마찬가지로 255가 되네요

 

 

 

그럼 세번째 옥텟을 볼까요?

 

11110000 이네요.

 

조금 다르지만 차분히 풀어봅시다.

 

 

11110000<--이 2진수를 십진수로 바꿔보죠.

 

128+64+32+16+0+0+0+0 = 240이 됩니다.

 

그럼 마지막으로 네번째 옥텟을 보죠.

 

00000000 이죠? 십진수 바꿔보면

 

0+0+0+0+0+0+0+0=0입니다. 할필요도 없죠.

 

그럼 /20은 십진수로 바꿨을때

 

255.255.240.0이 된다는겁니다. 클래스레스네요.(이건 나중에.. 서브넷 설명을 글로 쓰다니..)

 

 

 

여기서 의문이 들죠

 

왜 한 옥텟당 맨왼쪽부터 128로 시작하느냐..?

 

그것은 한 옥텟은 8자리입니다. 이것을 전부 1로 두고 더해보면

 

255까지밖에안나옵니다. 정확히 말하면 256"갯수"입니다. 0포함해서요.(00000000 <--이것도 포함)

 

맨 왼쪽의 숫자는 128일 수 밖에 없습니다.

 

설명은 여기까지구요..

 

 

다음엔 서브넷팅에 대하여 기재해 보도록 하겠습니다.

'Network' 카테고리의 다른 글

스위치 interface discard 원인 요소들  (0) 2020.02.28
VLAN - Untag/Tag/Native/Hybrid  (1) 2019.07.20
VLAN  (0) 2019.07.20
Transparent Bridge  (0) 2019.04.20
Network란?  (0) 2019.04.20
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함