Q) 주어진 네트워크 주소는 192.168.1.0/24 입니다. 각 부서에서 요청한 IP 개수는 다음과 같습니다.
- HR팀: 5개
- ENG팀: 35개
- DEV팀: 50개
- Sales팀: 12개
각 부서에 적절한 서브넷을 할당하고, 네트워크 주소, 브로드캐스트 주소, 사용 가능한 호스트 범위를 포함하여 서브넷을 설계하세요.
A)
- IP 주소는 2의 거듭제곱 크기로 할당됩니다. (예: 2, 4, 8, 16, 32, 64...)
- IPv4 주소는 32비트이며, 8비트씩 4개로 구분되어 점(.)으로 표현됩니다.
- 서브넷 마스크도 32비트이며, 네트워크와 호스트를 구분하는 역할을 합니다.
- 마스크 값에 따라 네트워크 크기가 결정되며, 연속으로 1이 설정된 부분이 네트워크 영역, 연속으로 0이 설정된 부분가 호스트 영역을 나타냅니다.
- 할당된 서브넷에서 첫번째 주소는 네트워크 주소로, 마지막 주소는 브로드캐스트 주소로 사용할 수 없습니다.
- 필요한 IP 개수보다 크거나 같은 2의 거듭제곱을 선택해야 합니다.
- 서브넷을 각각 다르게 설정해야 합니다.
- 큰 서브넷을 먼저 할당해야 작은 서브넷이 남은 공간에서 적절히 배치될 수 있습니다. 작은 서브넷을 먼저 나누면 남은 공간이 단편화되어 필요한 크기의 서브넷을 만들기 어려울 수 있습니다.
- DEV팀: 192.168.1.0/26 (64개 IP, 사용 가능 범위: 192.168.1.1 ~ 192.168.1.62, 네트워크 주소: 192.168.1.0, 브로드캐스트 주소: 192.168.1.63)
- ENG팀: 192.168.1.64/26 (64개 IP, 사용 가능 범위: 192.168.1.65 ~ 192.168.1.126 , 네트워크 주소: 192.168.1.64, 브로드캐스트 주소: 192.168.1.127)
- Sales팀: 192.168.1.128/28 (16개 IP, 사용 가능 범위: 192.168.1.129 ~ 192.168.1.142 , 네트워크 주소: 192.168.1.128, 브로드캐스트 주소: 192.168.1.143)
- HR팀: 192.168.1.144/29 (8개 IP, 사용 가능 범위: 192.168.1.145 ~ 192.168.1.150 , 네트워크 주소: 192.168.1.144, 브로드캐스트 주소: 192.168.1.151)
VLSM(Variable Length Subnet Mask)
VLSM(가변 길이 서브넷 마스크)은 IP 주소 공간의 낭비 최소화하기 위해 같은 네트워크 주소를 공유하는 서브넷이더라도 각 서브넷마다 다른 서브넷 마스크를 적용하는 유연한 네트워크 설계 방식입니다.
고려사항.
- 가장 큰 서브넷부터 주소를 할당해야 합니다.
- 네트워크 성장 가능성을 고려하여 여유 IP를 확보해야 합니다.
- 라우팅 프로토콜이 VLSM을 지원해야 합니다(OSPF, EIGRP 등).
- 라우터가 CIDR을 지원해야 효과적으로 라우팅할 수 있습니다.
📌 VLSM를 지원하는 라우팅 프로토콜
RIP V2 |
거쳐가는 라우터(홉 수) 기준, 최대 15홉 제한 |
작은 네트워크 |
OSPF |
네트워크 전체를 분석해 최적 경로 선택, 빠르고 안정적 |
대기업, 대규모 네트워크 |
EIGRP |
Cisco 전용, 빠르고 효율적 |
Cisco 장비가 많은 환경 |
BGP |
인터넷에서 사용, 국가/ISP 간 경로 설정 |
글로벌 네트워크, ISP |
📌 용어 정리
- CIDR 블록 할당 (CIDR Allocation)
- ISP가 기업에게 큰 CIDR 블록(예: 192.168.0.0/22)을 할당하는 과정
- IP 주소 계획 (IP Address Planning)
- 기업 내부에서 CIDR 블록을 기반으로 VLSM을 적용해 서브넷을 설계하는 과정
- 엔터프라이즈 라우팅 (Enterprise Routing)
- 기업 내부에서 본사와 지사 간의 네트워크를 연결하고 라우팅을 설정하는 과정
- 주로 EIGRP, OSPF, BGP 같은 동적 라우팅 프로토콜을 사용하여 자동으로 경로를 관리함
- VPN/MPLS 백본 네트워크 (VPN/MPLS Backbone)
- 지사 간 연결을 위해 ISP의 MPLS 네트워크 또는 VPN 터널을 통해 CIDR 할당된 블록을 활용하는 방식