A. IP 개요
1. IP 주소의 구성
IP 주소는 십진법(Decimal)으로 표현하지만 실질적으로는 이진법(Binary)으로 구성되어 있습니다. 총 32비트로 구성되어 있으며 이를 4 옥텟으로 구성되었다고도 합니다. 고정된 IP 주소를 지정하거나 자동으로 할당받기도 하는데 IP 주소가 바뀌면 안 되는 중요한 장비는 보통 고정으로 지정합니다.
예를 들어 236을 십진법 -> 이진법으로 변환을 하면 아래의 표와 같습니다.
256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0(236) | 1(108) | 1(44) | 1(12) | 0(12) | 1(4) | 1(0) | 0(0) | 0(0) |
236-128 | 108-64 | 44-32 | 12-8 | 4-4 | ||||
108 | 44 | 12 | 4 | 0 |
236 = (0) 1110 1100 = 128+64+32+8+4 = 236
각각의 OS에서 아이피 주소 확인 명령어는 아래와 같습니다.
- Window의 경우 CMD 창에서 ipconfig 입력하면 확인할 수 있습니다.
- Linux/Mac의 경우 터미널 창에서 ifconfig 입력하면 확인할 수 있습니다.
- Cisco IOS의 경우 show ip interface brief 또는 show interface 입력하면 확인할 수 있습니다.
2. 서브넷 마스크(The Subnet Mask)
서브넷 마스크에 대해 이해하려면 두 가지의 개념을 완벽히 이해해야 합니다.
첫 번째, 이진수의 이해이며 두 번째, 논리적 AND연산에 대한 이해입니다.
Logical AND의 성질은 양쪽이 모두 1인 경우에만 결과도 1이 됩니다.
이진수의 경우에는 아래와 같은 연산 결과가 나옵니다.
0 AND 0 = 0
1 AND 0 = 0
0 AND 1 = 0
1 AND 1 = 1
위의 내용을 꼭 기억하도록 합니다.
예를 들어 192.168.10.15/24를 이진수로 바꾸면 아래와 같습니다.
1100 | 0000 | 1010 | 1000 | 0000 | 1010 | 0000 | 1111 | |
and | 1111 | 1111 | 1111 | 1111 | 1111 | 1111 | 0000 | 0000 |
192.168.10. ----> 이 부분은 네트워크 부분이고
15 ---> 이 부분은 호스트 부분입니다.
위와 같이 서브넷 마스크는 네트워크 부분과 호스트 부분으로 나눠집니다. 호스트는 스위치를 통해 같은 서브넷상의 다른 호스트에게 직접 트래픽을 보낼 수 있고 다른 서브넷상 호스트에 트래픽을 보낼 땐 라우터를 통합니다.
서브넷 마스크의 특징으로는 서브넷 마스크는 이진수로 표기 시 1이 연속적으로 와야 합니다. 예를 들어 1111 1101 1111 1111.... 이런 형식은 서브넷 마스크로 사용할 수 없습니다. 호스트 부분이 0이거나 255인 주소는 사용 못합니다.
3. IP 클래스
3-1. A 클래스(1. 0.0.0 - 126. 255.255.255)
이진수로 표현 시 첫 숫자는 무조건 0입니다.
기본 서브넷은 /8입니다.
0.0.0.0/8은 현재 네트워크를 의미합니다.
127.0.0.0/8은 루프백 주소로 로컬 PC에서 IP 스택을 테스트하기 위한 주소입니다.
3-2. B 클래스(128.0. 0.0 - 191.255. 255.255)
이진수로 표현 시 첫 숫자는 무조건 1,0입니다.
기본 서브넷은 /16입니다.
3-3. C 클래스(192.0.0 0 - 223.255.255. 255)
이진수로 표현 시 첫 숫자는 무조건 1,1,0입니다.
기본 서브넷은 /24입니다.
3-4. D 클래스(224.0.0.0 - 239.255.255.255)
이진수로 표현 시 첫 숫자는 무조건 1,1,1,0입니다.
멀티캐스트용 주소로 네트워크, 호스트 부분이 없습니다.
그래서 기본 서브넷 마스크도 없습니다.
3-5. E 클래스(240.0.0.0 - 255.255.255.255)
이진수로 표현 시 첫 숫자는 무조건 1,1,1,1입니다.
실험용 주소들로 역시 기본 서브넷 마스크가 없습니다.
4. 서브네팅(Sub-neting)
4-1. CIDR
기존의 IP 할당 방식은 /8, /16, /24와 같이 클래스 별로 할당되었습니다. 그러나 이는 비효율적인 방법이라 요즘은 클래스 없이 할당을 합니다. CIDR는 클래스 없이 IP할당을 하였는데 이게 바로 서브네팅입니다.
즉 서브네팅은 하나의 큰 범위의 IP주소를 구매하여 잘게 잘라서 사용하는 것입니다. 서브네팅의 이점은 효율적인 주소사용 외에 경로요약이 가능한 점입니다.
4-2. 공식
네트워크 수를 구하는 공식은 위와 같습니다.
호스트 수를 구하는 공식은 위와 같습니다.
예를 들어 203.10.10.0/28 이란 주소를 위의 공식을 통해 네트워크수와 호스트수를 구해보겠습니다.
바뀐 서브넷마스크는 28이고 해당 주소의 기본 서브넷마스크는 C클래스이므로 24입니다.
즉 28-24 = 4 2의 4승이며 이는 16입니다. 따라서 16개의 네트워크를 가집니다.
32-28 = 4이며 16-2 = 14입니다. 따라서 각 네트워크별 할당될 사용가능한 호스트는 14개입니다. 정리하면 203.10.10.0/28 주소는 16개의 네트워크 주소를 가지고 있고 각 네트워크별 14개의 호스트 할당이 가능합니다.
cf) 여담으로
- 호스트 구하는 공식에서 -2를 하는 이유는 네트워크 주소와 브로드캐스트용 주소를 빼는 것입니다. 원래는 호스트뿐만 아니라 서브넷의 수를 구할 때도 -2를 했지만 특별한 이유가 없어 주소의 낭비만 불러왔습니다. 시스코 제품에는 ip subnet-zero란 명령어를 통해서 -2를 하지 않습니다. 이 명령어는 장비 실행 시 자동 실행됩니다.
- /31과 /30의 호스트는 둘 다 2개입니다. 그러나 일반적으로 쓰이는 건 /30입니다. 그러니 특별하게 /31을 사용하라는 언급이 없으면 /30을 사용하면 됩니다.
5. 가변 길이 서브넷마스크 VLSM
초기라우팅 프로토콜은 고정길이 서브넷마스크를 지원하였습니다. 이는 서브넷이 가능하나 모두 크기가 동일한 서브넷을 사용하여야 했습니다. 하지만 요즘 라우팅 프로토콜은 VLSM을 지원하여 다른 크기의 서브넷이 있을 수 있습니다.
6. 서브넷팅시 고려사항
- 네트워크에 서브넷이 필요한 위치의 수
- 각 서브넷에 필요한 서브넷 수
- 각 위치별 IP 주소 지정 요구사항 파악
- 각 서브넷 별 크기
7. 서브네팅된 네트워크 주소 쉽게 구하는 방법
예를 들어서 60.15.10.75/19 란 주소의 네트워크 주소, 호스트 주소, 브로드캐스트 주소, 다음 네트워크 시작 주소를 구할 때 다음과 같이 구할 수 있습니다.
19 = 3 옥텟의 3비트(16보다 3 더 크다) = 128+64+32 = 224
255.255.224.0 이 /19입니다.
256-224 = 32입니다. 즉, 네트워크는 32배로 증가합니다.
이를 기반으로 네트워크와 호스트 주소를 계산하면 아래와 같습니다.
60.15.0.0 = 네트워크 주소
60.15.0.1 - 60.15.31.254 = 호스트 주소
60.15.31.255 = 브로드캐스트 주소
60.15.32.0 = 다음 네트워크 주소
'Network > CCNA' 카테고리의 다른 글
CCNA - Cisco 스위치와 라우터 기초 (0) | 2024.08.30 |
---|---|
CCNA - 장비 간략 개요, DNS 와 ARP (0) | 2024.08.29 |
CCNA - OSI 7 Layer 개요 (2) | 2024.08.28 |
CCNA - Cisco IOS 개요 (2) | 2024.08.27 |
CCNA - 기초적 네트워크 개요 (0) | 2024.08.26 |