Subnets
Subnet 서브넷
- 동일한 network address를 가진 장치 인터페이스들(컴퓨터나 핸드폰)로 구성된 IP network
- 하나의 라우터 인터페이스는 하나의 서브넷을 형성한다.
-
메시지는 서브넷 내의 모든 인터페이스(컴퓨터나 핸드폰)들로 브로드캐스트된다.
- 참고로, IP Address = Network Address + Host Address
Example
Q : 아래 그림은 몇 개의 서브넷으로 구성되는가?
A : 6개. 라우터에서 하나의 인터페이스가 하나의 서브넷을 형성하므로 R1,R2,R3가 독자적으로 각각 서브넷 1개씩 구성하고 R1,R2,R3가 서로 공유하는 서브넷이 3개(R1-R2 , R2-R3, R3-R1)가 있으므로 3 + 3 으로 총 6개가 있다.
=> 하나의 라우터의 하나의 인터페이스는 하나의 서브넷을 형성한다는 것을 명심하자.
Subnet mask
-
서브넷 마스크란 한 서브넷의 네트워크 부분 길이를 말한다.
-
class A : 255.0.0.0 => /8
-
class B : 255.255.0.0 => /16
-
class C : 255.255.255.0 => /24
Subnet Address
- 서브넷 마스크( 즉 길이 표현 ) 가 있는 네트워크 주소로 표현한 것.
=> 여기에서 Subnet Address는
- 223.1.1.0/24
- 223.1.2.0/24
- 223.1.3.0/24
Subnetting 서브네팅
subnet 과 subnetting 은 확실히 다른 개념이다. 구분하자.
- Subnet : 단일 IP 네트워크 주소를 여러 개의 서브 네트워크로 나누는데 사용되는 기술
Why subnetting?
-
class B 네트워크는 하나의 네트워크가 65,536 개의 주소를 가질 수 있다. 따라서 매우 많은 개수의 address 이므로 충돌의 가능성과 관리의 복잡성이 증가한다.
-
예를 들어, 라우터 외부에서 내부로 시그널이 들어올 때 broadcast 방식으로 모든 주소에게 보내지는데, 이 때 내부에서 또 시그널을 보낸다면 이 둘의 시그널이 충돌하고 따라서 데이터가 손실한다. 그런데 주소의 수가 많다면 충돌하여 데이터가 손실할 가능성이 많아지는 것을 뜻하므로 네트워크 상 좋지 않다.
=> 따라서 서브넷을 또 여러 개의 서브넷으로 쪼개는 서브넷팅을 통해 충돌의 수를 줄인다.
Subnetting 하는 법
=> Host Address의 비트들을 사용해 하나의 서브넷을 여러개의 서브넷으로 나눈다.
=> 위의 그림은 Host address 에서 3개의 bit를 빌려 최대 8개의 서브넷을 만들 수 있다.
=> 라우터 밖에서 Network Address의 Subnet address는 128.10.0.0 이지만 내부적으로는 Host Address에서 8bit를 빌려 최대 256개의 서브넷을 만들 수 있고 각각이 구별된다.
=> 즉 외부에서 내부로 시그널이 들어올 때 라우터 밖에서는 128.10.0.0/16 인 것만 알고 안으로 들어오지만, 내부적으로는 보낼 주소의 서브넷 범위로만 broadcast 된다. 예를 들어, 128.10.1.2에 시그널을 보낸다면 128.10.0.0/16만 보고 라우터에 전달되고, 내부적으로 128.10.1.0/24의 주소들만 broadcast 된다는 것이다.
=> 따라서 서브넷팅 하기 전이나 후나 외부에서는 128.10.0.0/16만을 이용해 내부로 들어오는 것은 변함이 없지만, 내부적으로 서브네팅 하기 전보다 더 작은 범위의 서브넷에만 브로드캐스트되므로, 시그널끼리 충돌될 가능성이 적어지고 따라서 데이터 손실이 덜 일어나게 된다는 것이다.