IPv4 Address
3. Classless Addressing
- Variable –Length Blocks
- Two-Level Addressing
- Block Allocation
- Subnetting
Variable-length blocks in classless addressing
classless addressing에서는 클래스라는 단위 자체가 없어졌기 때문에 블록의 크기도 유동적이다.
Prefix and suffix
- classless addressing에서 prefix는 network를, suffix는 host를 정의한다.
- classless addressing에서 prefix 길이는 1~32 사이이다.
Example 5.22
전체 인터넷이 4,294,967,296개의 주소를 가진 하나의 블록으로 간주될 경우 prefix 길이와 suffix 길이는?
답
prefix 길이: 0 (블록의 수: 2^0 = 1)
suffix 길이: 32 (주소의 수(각 블록의 사이즈): 2^32 = 4,294,967,296)
이 single block에서는 32비트로 2^32 = 4,294,967,296개의 호스트를 정의할 수 있다.
Example 5.23
인터넷을 4,294,967,296개의 블록으로 나누고 각 블록이 하나의 주소를 가진다면 prefix 길이와 suffix 길이는?
답
prefix 길이: 32 (블록의 수: 2^32 = 4,294,967,296)
suffix 길이: 0 (주소의 수(각 블록의 사이즈): 2^0 = 1)
2^32 = 4,294,967,296 블록을 정의하는 데는 32비트가 모두 필요하다. 각 블록의 유일한 주소는 블록 자체에서 정의된다.
Example 5.24
블록의 주소 갯수는 prefix 길이의 값과 반비례한다. n이 작으면 블록이 크고 n이 크면 블록이 작다.
(prefix(=블록 갯수, n) 길이가 길어질수록 subfix(=각 블록의 사이즈)는 작아지기 때문)
Slash notation
slash + prefix 길이를 같이 써주어야 한다.
*classless addressing에서는 블록 안의 주소 중 하나와 블록을 정의하기 위한 prefix 길이를 알아야 한다.
Example 5.24
classless addressing에서 주소만 주어지면 주소가 속한 블록을 정의할 수 없습니다. 즉 시작주소, 마지막 주소, 주소의 갯수를 알 수 없다.
ex) 주소 230.8.24.56은 블록과 관련된 prefix 값과 함께 아래에 나와 있는 블록들에 속할 수 있다.
ex) Prefix length: 20 ☞ 20비트까지 살리고 뒤를 다 0으로 만들기
230.8.00010000.00000000 -> 230.8.16.0 (시작주소)
230.8.00011111.11111111 -> 230.8.31.255 (마지막 주소)
Example 5.26
슬래시 표기법을 사용한 주소의 정의
a. 주소 12.23.24.78/8
네트워크 마스크: 255.0.0
1.0.0.0 (8개의 1, 24개의 0)
prefix 길이: 8, suffix 길이: 24
b. 주소 130.11.232.156/16
네트워크 마스크: 255.255.0.0
1.1.0.0 (16개의 1, 16개의 0)
prefix 길이: 16, suffix 길이: 16
c. 주소 167.199.170.82/27
네트워크 마스크: 255.255.224
1.1.1.11100000 (27개의 1, 5개의 0)
prefix 길이: 27, suffix 길이: 5
Example 5.27
블록에 있는 주소 중 하나가 167.199.170.82/27일 때, 네트워크의 주소 갯수, 첫 번째 주소, 마지막 주소는?
*첫 번째 주소: suffix를 다 0으로 만들어 준다.
*마지막 주소: suffix를 다 1로 만들어 준다.
답
n=27이므로 네트워크 마스크에는 27개의 1과 5개의 0이 존재한다. ☞ 255.255.225.224
a. 네트워크의 주소 갯수(총 블록 갯수): 2^(32 - n) = 2^(32 - 27) = 2^5 = 32
b. 첫 번째 주소(네트워크 주소): 마스크와 주소를 AND 연산 ☞ 167.199.170.64/27
c. 마지막 주소: 네트워크 마스크의 complement(보수)와 지정된 주소를 OR 연산 ☞ 167.199.170.95/27
Example 5.28
블록에 있는 주소 중 하나가 17.63.110.114/24일 때, 네트워크의 주소 갯수, 첫 번째 주소, 마지막 주소는?
답
n=24이므로 네트워크 마스크에는 24개의 1과 8개의 0이 존재한다. ☞ 255.255.225.0
a. 네트워크의 주소 갯수(총 블록 갯수): 2^(32 - n) = 2^(32 - 24) = 2^8 = 256
b. 첫 번째 주소(네트워크 주소): 마스크와 주소를 AND 연산 ☞ 17.63.110.0/24
c. 마지막 주소: 네트워크 마스크의 complement(보수)와 지정된 주소를 OR 연산 ☞ 17.63.110.255/24
Example 5.29
블록에 있는 주소 중 하나가 110.23.120.14/20일 때, 네트워크의 주소 갯수, 첫 번째 주소, 마지막 주소는?
답
n=20이므로 네트워크 마스크에는 20개의 1과 12개의 0이 존재한다. ☞ 255.255.240.0
a. 네트워크의 주소 갯수(총 블록 갯수): 2^(32 - n) = 2^(32 - 20) = 2^12 = 4096
b. 첫 번째 주소(네트워크 주소): 마스크와 주소를 AND 연산 ☞ 110.23.112.0/20
c. 마지막 주소: 네트워크 마스크의 complement(보수)와 지정된 주소를 OR 연산 ☞ 110.23.127.255/20
Example 5.30
ISP(Internet service provider, 인터넷 서비스 제공자)가 1000개의 주소 블록을 요청했을 때 부여되는 블록의 첫 번째 주소와 마지막 주소?
a. 1000은 2의 거듭제곱이 아니므로 1024개의 주소가 부여된다(1024 = 2^10 ☞ 1000보다 큰 제일 작은 지수승→suffix).
b. 블록의 prefix 길이 n = 32 - log1024 = 22 ☞ suffix가 10이기 때문에, prefix로는 22를 사용한다.
c. 시작 주소는 18.14.12.0
부여되는 블록: 18.14.12.0/22
첫 번째 주소: 18.14.12.0/22
마지막 주소: 18.14.15.255/22
*prefix값은 항상 동일해야 한다.
Example 5.31
조직이 과거에 클래스 A 블록을 73.0.0.0으로 지정했다고 가정하자. 블록이 권한에 의해 취소되지 않는 경우 classless 아키텍처는 조직이 classless addressing에 블록 73.0.0.0/8을 가지고 있다고 가정한다.
*subnetwork를 위한 주소 할당에 적용되는 제한은 네트워크를 위한 주소 할당에 사용되는 제한들과 평행하다.
Example 5.32
조직에 블록 130.34.12.64/26이 부여된다.
조직은 각각 동일한 수의 호스트를 가진 4개의 서브 네트워크를 필요로 한다. 이때 하위 네트워크를 설계하고 각 네트워크의 정보를 찾아라.
답
전체 네트워크의 주소 갯수는 N = 2^(32 - 26) = 2^6 = 64개이다.
네트워크의 첫 번째 주소는 130.34.12.64/26이고 마지막 주소는 130.34.12.127/26이다.
하위 네트워크 설계:
1. 4개의 각 서브 네트워크에 16개의 주소를 부여한다. (64/4 = 16)
2. 각 하위 네트워크에 대한 하위 네트워크 마스크는 다음과 같다.
3. 사용 가능한 첫 번째 주소부터 시작하여 각 서브넷에 16개의 주소를 부여한다.
자료 출처
TCP/IP Protocol Suite 4th Edition Slide
(Behrouz A. Forouzan 저, McGraw-Hill, 2010)
'Computer Science > 컴퓨터 네트워크' 카테고리의 다른 글
컴퓨터 네트워크: IPv4 Address - Special Addresses, NAT (0) | 2021.12.02 |
---|---|
컴퓨터 네트워크: IPv4 Address - Classless Addressing(2) (0) | 2021.12.02 |
컴퓨터 네트워크: IPv4 Address - Classful Addressing (0) | 2021.12.01 |
컴퓨터 네트워크: IPv4 Address - Introduction (0) | 2021.11.27 |
컴퓨터 네트워크: Options (0) | 2021.11.27 |
컴퓨터 네트워크: TCP timers (0) | 2021.11.11 |