Recent Posts
Recent Comments
Link
«   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
Archives
Today
Total
관리 메뉴

얼빛네

서브넷 마스크(Subnet Mask) 본문

Network

서브넷 마스크(Subnet Mask)

얼빛 2020. 8. 4. 17:46

 일단 시작에 앞서 키보드에 'window' 키와 'r' 키를 같이 누르면 실행창이 뜹니다. 앞으로는 그냥 실행창이라고 부르겠습니다. 
 이 실행창에서 ncpa.cpl을 입력하게 되면 네트워크 연결이 나타나는데 여기서 여러분이 사용하는 네트워크(아마 유선이면 이더넷이고 wifi 사용 중이라면 wifi라고 나올 겁니다)에 마우스 오른쪽 키로 속성에 들어가시면 항목이 나오고 밑으로 내리다 보면 TCP/IPv4가 있습니다.
 그리고 내리다 보면 TCP/IPv6도 있고요. 여기서 IPv4부분을 선택하여 속성을 눌러보면 자동으로 IP주소받기와 다음 IP주소 받기가 나와있습니다.
 자동으로 주소받기라는 것은 말 그대로 자동으로 IP를 할당받겠다는 것이고 다음 IP 주소 사용이라는 것은 내가 원하는 IP를 사용하겠다는 것입니다.
 물론 원하는 IP라고 해도 사용할수 있는 범위 내의 IP를 말하는 거지 아무거나 사용할 수 있지는 않습니다.
 어쨋든 여기서 자동으로 IP 주소 받기라는 것은 DHCP를 의미합니다.
 
 DHCP는 Dynamic Host Configuration Protocol의 약자로 쉽게 말하면 자동으로 IP를 할당해주는 표준 네트워크 프로토콜을 말합니다.
 DHCP가 있기 때문에 우리는 머리 아프게 IP를 설정하고 서브넷 마스크를 구할 필요가 없습니다.
 여기서는 IP에 다룰것이기 때문에 DHCP는 IP를 자동으로 할당해주는 녀석이다 라고까지만 알고 넘어가겠습니다.

 다시 IP 얘기로 돌아오면 우리가 여기서 원했던 것은 서브넷 마스크라는 것입니다.
 IP는 기존에 배웠기 때문에 알고있지만 서브넷 마스크와 게이트웨이라는 것은 상당히 생소한 단어입니다.
 먼저 게이트웨이는 쉽게 말하자면 통신에서의 출입구같은 녀석입니다.
 즉 집이 아무리 좋아도 출입구가 없다면 집에 들어가고 나올 수 없는 것처럼 통신에서도 게이트웨이라는 출입구를 설정해줘야지 데이터가 오고 갈 수 있습니다.
 서브넷 마스크는 사실 저번 시간에 IP에 대해 배운 부분만 이해했다면 굉장히 쉬운 개념입니다.
 서브넷 마스크는 IP의 Net부분과 Host부분을 나눠주는 역할을 합니다.

 192.20.25.1이라는 IP를 보면 우리는 이제 이 IP가 C Class라는 것을 알고 있습니다. C Class이기 때문에 Net부분은 24bit라는 것도 알고 있습니다. 즉 192.20.25.0 이 부분이 Net부분이겠지요.
 위 IP에 관하여 Subnet Mask로 나타내면 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 이런 식으로 표현이 됩니다.
 Net부분은 1로 Host부분은 0으로 표현을 하는데 이를 10진수로 표현하면 255.255.255.0이 됩니다.
 사실 우리는 192로 시작하는 네트워크가 C Class라는 것을 이미 알고 있기 때문에 24bit의 net부분을 갖는다고 알고 있지만 이 사실을 모른다고 해도 서브넷 마스크를 통해 Net부분을 알 수 있습니다.
 예를들어 192.20.25.1이라는 IP와 255.255.255.0이라는 서브넷 마스크가 주어졌다고 가정하겠습니다.
 Net부분을 구하기 앞서 우리는 AND연산과 OR연산에 대하여 알아보겠습니다.
 쉽게 생각하면 AND는 곱하기를 OR 더하기를 생각하면 됩니다.

AND 연산
0 0 -> 0
0 1 -> 0
1 0 -> 0
1 1 -> 1

0과 0이만나도 0, 0과 1이 만나도 0, 1과 0이 만나도 0, 1과 1이 만나야만 1이나 옵니다. 즉 곱하기와 유사하다는 것을 알 수 있습니다.

OR 연산
0 0 -> 0
0 1 -> 1
1 0 -> 1
1 1 -> 1

이번에는 1이들어간 모든 것이 1이 되었는데 덧셈을 생각한다면 왜 1과 1이 만나도 1이냐고 물을 수도 있는데 컴퓨터는 2진법으로 구성되어있다고 저번 시간에 말씀드렸습니다.
2진법이라는 것은 단순히 보면 0과 1로 구성되어있지만 더 파고든다면 정확히는 0과 0가 아닌 것으로 구성되어있는 것입니다.
따라서 2는 0이 아니기 때문에 1이라고 생각하면 OR연산도 쉽게 이해가 됩니다.

 연산에는 OR, AND 뿐만 아니라 다양하게 있지만 여기서 필요한것은 AND 연산이므로 다른 것들은 나중에 알아보도록 하겠습니다.
 여기서 중요한것은 IP주소와 S/M(서브넷 마스크)가 주어졌을 때 AND 연산을 사용하면 네트워크 부분을 구할 수 있다는 것입니다.

 IP부분과 S/M부분을 AND연산을 하게 되면

 1100 0000 . 0001 0100 . 0001 1001 . 0000 0001 => 192.20.25.1 => IP주소
 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 => 255.255.255.0 => Subnet Mask
 1000 0000 . 0001 0100 . 0001 1001 . 0000 0000 => 192.20.25.0 => 네트워크 주소

 신기하게도 우리가 기존에 알고있던것처럼 24bit의 Net부분만 나오게 됩니다.

 자 여기서 눈치빠른사람들은 한 가지를 눈치챌 수 있습니다.
 바로 S/M의 경우는 Net부분을 1로 나타내기 때문에 1이면 Net 0이면 Host부분입니다. 이 말은 S/M의 경우 111100111011 이런 식으로 0이라는 숫자가 오면 다음 숫자 어디든지 1이 나올 수 없습니다.
 
 한마디로 A Class의 모든 IP의 S/M은 255.0.0.0이 되고 B Class의 S/M은 255.255.0.0이 C Class의 S/M은 255.255.255.0이 됩니다.

 다음 시간에는 IP와 S/M에 관하여 더 자세히 알아보고 서브넷팅에 개념에 대하여 알아보겠습니다.

*정리*
Subnet Mask는 IP의 Network 부분과 Host 부분을 나눠주는 역할을 한다.
Net 부분은 1로 Host 부분은 0으로 나타낸다. 따라서 0이 하나라도 입력되면 그다음부터는 절대 1을 다시 사용할 수 없다. 

'Network' 카테고리의 다른 글

허브(Hub)  (0) 2020.08.05
서브넷팅(Subnetting)  (0) 2020.08.04
IP에 관하여  (0) 2020.08.04
TCP/IP  (0) 2020.08.04
OSI 7 Layer  (0) 2020.08.04
Comments