https://code-lab1.tistory.com/34
[네트워크] 서브넷, 서브넷마스크, 서브넷팅이란? | 서브넷팅 예제
서브넷의 등장 배경 흔히 사용되는 IPv4 주소 체계는 클래스를 나누어 IP를 할당한다. 하지만 이 방식은 매우 비효율적이다. 예를 들어 어떤 기관에 A 클래스를 할당한다고 하면 16,777,214개의 호스
code-lab1.tistory.com
서브넷을 왜 만들지?
IP주소의 구조
- 위와 같은 사설주소가 있을 때
- 전체는 32bit
- .을 기준으로 8bit씩
- 나올 수 있는 경우의 수는 256가지
- unsigned int → 0 ~ 255
- 255를 2진수(8bit)로 나타내면 11111111
- 서브넷 마스크를 이야기할 때는 비트연산을 알고 있다는 가정 하에
- AND, OR, NOT...
- 이 주소는 C class
- 24bit는 Network ID, 8bit는 Host ID로 사용한다
- Network ID: 192.168.0
- 이 네트워크의 HOST가 2⁸만큼 있다
사용하지 못하는 주소
0000 0000
- 0이라서 못 씀
- 뭘 지칭한다고 보지 않음
1111 1111
- Broad Cast address로 써야 해
➡️결론적으로 Host에 해당되는 bit에서 -2 한 만큼만 쓸 수 있다
문제 상황
- 호성이라는 사람이 인터넷 서비스 프로바이더에게 IP주소를 요청
- PC 몇대인지 확인
- 기업이라서 PC가 여러대. 공인 IP 기준 여러개가 필요
- 호성이에게 IP 주소 100개를 주긴 줘야함. 그런데 그나마 제일 작은 C class도 남는 주소가 생김 (낭비)
- 그래서 C class를 또 쪼갬 ➡️ 서브네팅
- 물론 A, B, C class 모두 서브네팅을 하지만 기본적으로는 C class에서 하는 것을 지칭
- 일반적으로 /24라고 하면 24bit가 network id, Host = 8bit
- 여기서 한 칸을 늘려서 25bit를 Network ID로 쓰겠다
- 이렇게 잘라도 표기는...?
여기부터 이해가 잘 안된다ㅠㅠㅠ🤯
- 이진수 1000 0000이면 128
- 192.168.0번대 네트워크인데 0이라고 안하고 192.168.0.128???
- 그 뒤에는 128보다 작은 값들이 나올 수도 있다?
- Host 할당 가능 범위가 그만큼 줄어들었다
- 다 0으로 된 네트워크 (다 0이라서 빼고)
- 전체가 다 된 네트워크??????
- Broadcast address를 어떻게 볼거냐에서 차이 발생
- 앞이 1이라고 봤을 때 뒤만 놓고 보면 표시된 부분이 127이다????
- 경우의 수가 127
- 표시된 주소가 Broadcast 주소가 되는 것
만약
- Network ID를 둘로 쪼갰다?
- 26bit가 됨
- 그럼 이제 0과 1이 아니라 00, 01, 10, 11이 됨
- 그 뒤에 6bit 가능(여기서 network id를 얘기하게 된다?)
- Host ID에서 못 쓰는 값은 0000, 1111
서브넷을 계속 나눌수록 사용할 수 있는 주소가 준다
- 네트워크 하나당 적어도 두 개의 주소가 낭비
- 서브넷을 많이 나누는 것은 좋지 않다
- 낭비가 되는 상황이라면 나누긴 하지만(?)
출처: https://youtu.be/px0HDON5Wa4?si=YaONsX7mrKzGE9gB
'백엔드 > 네트워크' 카테고리의 다른 글
[네트워크기초이론]#12. WAS, JVM 그리고 RESTful API (2) | 2023.10.16 |
---|---|
[네트워크기초이론]#38. 서브넷팅 보강 (1) | 2023.10.11 |
[네트워크기초이론]#35. 가래떡과 Stream (0) | 2023.10.11 |
[네트워크기초이론] #34. MTU와 Packet 단편화 (0) | 2023.10.10 |
[네트워크기초이론]#30. 전세계 인터넷을 멈추는 방법과 DNS (1) | 2023.10.10 |