CCNA 강의 3 : 3계층 상세 / Subneting
TCP/IP model : 인터넷 계층 (3 계층)
라우터 장비 -> 공유기 -> PC 3개 연결
각 PC의 IP 주소
- 192.168.10.1
- 192.168.10.2
- 192.168.10.3
게이트웨이의 IP 주소
- 192.168.10.254
Network ID (대역을 구분) : 네트워크 대역 (고정, 불변)
Host ID (PC에 부여할 IP 개수) : 호스트 대역 (가변)
모든 IP 주소 : 192.168.10.X -> 같은 네트워크 대역 / X : 호스트 대역
대역은 같지만 IP주소는 같을 수 없음 : 인터넷끼리 충돌이 일어나기 때문
각 대역별 기본 서브넷 마스크
*8bit == 1byte / 2^8 : 0~255 표현 가능
- Class A : 255(NID).0.0.0(HID)
- Class B : 255.255(NID).0.0(HID)
- Class C : 255.255.255(NID).0(HID)
- Class D : IGMP 영역
- Class E : 테스트용
IP 주소 (TCP 기반 논리주소)
공인 IP 체계 : 0.0.0.0 ~ 255.255.255.255
IP Address Classes
*첫번째 옥텟의 범위를 보면 Class를 알 수 있다
각 클래스별 IP(기본적으로 공인 IP) 제외 대역
이미 예약이 되어있기에 실제로 부여할 수 없는 IP주소
1. Class A
전체 네트워크 대역에서 50% 사용
IP | Description |
---|---|
0.0.0.0 | 전체 네트워크 Address |
10.x.x.x | 사설 IP Address |
127.0.0.1 | Local Loopback Address |
2. Class B
전체 네트워크 대역에서 25% 사용
IP | Description |
---|---|
169.254.x.x | APIPA : 통신이 안 될 경우 정상 통신이 될 때까지 주소값을 부여 |
172.16.x.x ~ 172.31.x.x | 사설 IP Address |
3. Class C
전체 네트워크 대역에서 12.5% 사용
IP | Description |
---|---|
192.168.0.x ~ 192.168.255.x | 사설 IP Address (내부망에서 사용하는 가짜 IP이기에 공인 IP로 사용이 불가) |
공인 IP와 사설 IP
배경 : 공인 IP만 사용할 경우, IP의 고갈이 생김. 모든 곳에서 주소 체계를 IPv4 -> IPv6으로 변경하는 것은 불가. 이를 해결하기 위해 공인 IP하나를 사용하여 내부에서는 가짜 IP를 사용할 수 있도록 NAT과 사설 IP 도입
-
공인 IP (Global IP Address) : 외부 접속 가능한 IP
-
사설 IP (Private IP Address) : 공인 IP 하나로 인해서 여러 개의 IP를 사용할 수 있다 (가상 IP). 공인 IP와 달리 사설 IP는 인터넷이 불가능하기에, 사설 IP 시스템들이 인터넷을 이용할 수 있게 하기 위해 NAT(Network Address Translation : 네트워크 주소 변환)으로 사설 IP를 공인 IP로 변환하여 사용한다
*사설 IP는 중복될 수 있다. 따라서, 다른 공유기를 사용하는 내부망의 IP가 서로 같다고 해도, 둘은 다른 대역이다
Subneting
참고 : link
CIDR (Classless Inter-network Domain Routing)
클래스의 기반을 따르지 않으며, 원하는대로 주소를 합치거나 나누어 Network 대역을 재할당할 수 있다. 기존 Class 기반의 주소에서 클래스를 제외하고 32bit 전체 bit에 대해 네트워크와 호스트를 재설정한 주소 구조이다. 이는 기존의 주소에 비해 주소 손실을 줄이고, 구조화된 주소 할당으로 Routing Table을 줄여 Packet Delay를 줄인다.
*라우터의 처리 부하를 경감시킬 목적으로 개발되었으며, 정적 라우팅보다는 동적 라우팅에 주로 사용된다
EX
192.168.10.0/24는 192.168.10.0 ~ 102.168.10.255 의 범위를 나타냄
Subnetmask : 225.225.225.0 -> bitmask: 1~1.1~1.1~1.00000000 (1이 24개면 /24)
CIDR : /24
네트워크 장비는 서브넷 마스크가 아닌, CIDR 정보로 대역을 읽음
*서브넷 마스크의 비트마스크 : 절대 0에서 1이 될 수 없다. 즉, 왼쪽부터 차례로 1이 채워짐
Subneting
192.168.32.0/24 -> 255.255.255.0~255.255.255.255 : 256개의 IP를 가진 하나의 네트워크 대역으로, 256개의 호스트 중 Network 주소와 Broadcast 주소를 제외한 나머지를 사용
- Network 주소 : 네트워크 제일 첫번째 ip (192.168.32.0)
0~255 등 범위의 의미를 가지고 사용되는 주소이기에 제외 - Broadcast 주소 : 네트워크 제일 마지막 ip (192.168.32.255)
통신을 시작할 때에 모든 주소에 Broadcast 통신을 하는 주소이기에 제외 - 실제 사용 가능한 ip 주소 : 192.168.32.1 ~ 192.168.32.254
Broadcast Domain에 많은 호스트가 연결된 경우, 호스트에 발생한 Broadcast traffic이 모든 호스트에 전달되어 많은 Broadcast Traffic이 발생한다. 이러한 경우 Broadcast Domain은 보안이 취약하므로, Firewall 또는 ACL과 같은 정책을 구현하기 위해서는 네트워크 세그먼트를 나누는 것이 효율적이다. 따라서, ISP 업체에서는 Subneting을 한 후에 IP를 할당하여 주소를 절약한다.
실제적으로 제공한 IP : 218.128.32.0/24
서브넷팅을 하는 이유
- 보안 강화 : 서로 다른 대역으로 분리하여 간섭을 방지함
- Network Broadcast Size를 줄여 성능 향상 : 256/n 개로 감소
- 주소 낭비 방지
서브넷마스크가 하는 역할
서브넷 마스크 = CIDR (CIDR의 표기값 = 서브넷 마스크의 비트)
네트워크 ID와 호스트를 나누는 역할
ex )
218.128.32.0/24 -> 218.128.32.x/27 : 3bit 증가
네트워크 ID가 증가 = 대역의 개수가 증가
ex )
192.168.10.0/24
- class C
- 255.255.255.0
- 256개
절반으로 -> 128개씩 가진 서로 다른 두 대역
서브넷팅의 개수 = 대역의 개수 = 2
192.168.10.0 ~ 192.168.10.127
192.168.10.128 ~ 192.168.10.255
초기 상태
2^0 = 1개
255.255.255.00000000
서브넷 마스크 : 255.255.255.0
CIDR = /24
이후 상태
2^1 = 2개 -> 2개로 쪼개지고, 1bit 추가
255.255.255.0x / 255.255.255.1x
서브넷 마스크 : 255.255.255.128
CIDR = /25
문제
211.100.10.0/24 네트워크를 각 네트워크 당 60개의 Host가 사용할 수 있도록 Subneting 하시오
- 결정된 Subnet Mask?
255.255.255.192 - Subnet의 개수 ?
4개 - 실제 사용 가능한 Host의 개수?
64-2 = 62개 - 마지막 Subnet의 Network-ID?
211.100.10.192 - 첫번째 Subnet의 Broadcast 주소?
211.100.10.63 - 두번째 Subnet의 사용 가능한 IP 범위 ?
211.100.10.65 ~ 211.100.10.126 - 각 네트워크 대역의 CIDR 표현법?
211.100.10.0/26
211.100.10.64/26
211.100.10.128/26
211.100.10.192/26
class C, 255.255.255.0, 256개 -> 4개로 나눔
64개씩, 2bit(128+64 = 192)