3
Chapter 3. Addressing
3-1. IP주소의 구분 및 개요
“Chapter1” 에서 IP조소는 Network ID와 Host ID로 나누어지고 Network ID는 동일 네트워크를 대표하는 주소이며,Host ID는 개별 호스트의 고유 주소를 나타내는 것이라고 소개하였다.
그럼 Chapter3에서는 IP 주소에 대해 자세히 다루어 보도록 하겠다.
IP Address의 형식은 4byte, 총 32bit의 길이를 8bit 단위로 묶어서 나타낸다. (1byte=8bit, 8bit 단위=옥텟(octet))
이를 2진수로 배열할 수도 있고 옥텟으로 묶은 다음 각각을 십진수로 변환해서 나타낼 수도 있다.
[예제] 203.224.29.56 (10진수)
-> 11001011 11100000 00011101 00111000 (2진수)
10진수, 2진수 변환은 고등학교를 나왔다면 누구나 할 수 있으리라 생각하지만 쉽게 계산하려면 계산기를 이용하면 된다.
[보조프로그램]에서 [계산기]를 클릭하면 다음과 같은 계산기가 나타날 것이다.
[보기]메뉴에서 공학용을 선택한다. 왼쪽 상단 라디오 버튼 중 ‘Dec’ 를 선택하고, 10진수를 입력한 후 ‘Bin’ 을 선택하면 2진수로 변환한다.
[참고] Hex : 16진수 Dec : 10진수 Oct : 8진수 Bin : 2진수

3-2. IP Class
인터넷에는 수많은 수의 네트워크가 존재한다 이들에 고유의 IP주소를 일일이 할당하는 것은 매우 불편한 일이다.따라서 네트워크의 충돌을 피하기 위해 규모에 따른 IP 주소 할당의 범위를 지정하게 되었는데, 이것이 IP Class이다.
IP Class는 class A에서 class E까지 총 5개의 class로 나누어 진다.
이 중 Class D는 IP multicast의 용도로 사용되고, class E는 일반적인 용도로는 사용되지 않는다.
그럼 class ABC에 대해서 알아보자.
*Class A : 0 ~ 126개
0 |
*Class B : 128 ~ 191개
10 |
*Class C : 192 ~ 223개
110 |

3-3. 주소할당시 주의사항
1) 모든 Network ID와 Host ID의 비트가 1이 되어서는 안된다.모든 비트가 1로 설정되는 것은 브로드캐스팅으 받아들여진다. 즉, 255.255.255.255 가 된다.
2) 모든 Network ID와 Host ID의 비트가 0이 되어서는 안 된다.
모든 비트가 0이면 해당 주소는 이 네트워크 전송이라는 의미다.
즉, 0.0.0.0 인터넷 자체를 의미한다.
3) 하나의 Network ID 에 대해서는 중복되는 Host ID가 존재할 수 없다.
---> 이러한 이유에서 ‘-2’ 를 해주는 것이다.
이젠 어느 정도 이해가 되었으리라 생각합니다.
그럼 문제를 한 번 풀어 볼까요?
[문제] 다음 IP Host(컴퓨터)에 할당할 수 없는 IP 주소를 찾고 그 이유는?
1) 11.25.75.256
2) 129.35.172.0
3) 89.0.0.0
4) 245.2.3.5
3-4. Subnet Mask
* subnet mask의 역할1) IP주소에서 Network ID와 Host ID를 구분
Class A - 255. 0. 0. 0
Class B - 255.255. 0. 0
Class C - 255.255.255. 0
----> 옥텟 단위로 나누어지기 때문에 이 형태로 고정된다.
2) 목적지 Host의 IP주소가 동일 네트워크상에 있는지 확인
- 자신의IP 주소와 목적지의 IP주소를 서브넷 마스크와 각각 AND bit 연산을 통해서 얻은 결과가 동일하면 Local Network상에 목적지 Host가 존재하는 것이고, 틀리다면 원격 네트워크상에 존재하는 것이다.
Local Network상에 존재한다면 ARP Broadcasting을 통해서 목적지 호스트의 하드웨어 주소(MAC Address)를 알아낸 후 데이터를 전달할 것이고, 원격에 존재 한다면 기본 게이트웨이(Router)로 보낼 것이다.
[용어정리]
Broadcast
1) Directed Broadcast
- 프로토콜의 주소 영역에서 Host ID에 해당하는 영역의 비트를 모두 1로 채워서 특정 네트워크에 대한 브로트캐스트를 수행한다.
라우터가 지원하는 경유 원격 네트워크로 전달이 된다.
2) Limited Broadcast
- 모든 주소 영역 비트를 1로 채워서 브로드캐스트 한다.
라우터가 지원하는 경우 원격 네트워크로 전달이 되지 않고 브로드캐스트 메시지를 발한 호스트와 같은 네트워크상에 존재하는 호스트들만 수신한다.
<AND bit 연산> - 둘 다 참일 경우에만 참..
1 AND 1 : 1
1 AND 0 : 0
0 AND 1 : 0
0 AND 0 : 0

**자! 그럼 연습해 보도록 합시다**
위의 그림에서 네트워크 1과 2의 서브넷 마스크는 어떻게 될까요?
1은 Class C에 해당하므로 255.255.255.0이고, 2는 Class A에 속하므로 255.0.0.0이 된다는 것을 알 수 있습니다.
- 네트워크 1의 서브넷마스크와 컴퓨터 A의 IP주소와 컴퓨터 B의 IP주소와의 And 연산의 결과는 다음과 같습니다.
A : IP주소 | 11001011 11100000 00011101 00000101 |
서브넷마스크 | 11111111 11111111 11111111 00000000 |
11001011 11100000 00011101 00000000 |
B : IP주소 | 11001011 11100000 00011101 00001000 |
서브넷마스크 | 11111111 11111111 11111111 00000000 |
11001011 11100000 00011101 00000000 |
A컴퓨터는 ARP브로드캐스팅을 해서 B컴퓨터의 하드웨어 주소를 알아내서 목적지 호스트 B를 찾아가게 됩니다.
- 서브넷마스크와 C컴퓨터의 IP주소와의 AND연산을 해 보면..
C : IP주소 | 01011001 00000000 00000000 00000111 |
서브넷마스크 | 11111111 00000000 00000000 00000000 |
01011001 00000000 00000000 00000000 |
이때 네트워크 A에서는 사용자 컴퓨터 A가 아무리 불러도(브로드캐스팅을 해도) 반응이 오지 않습니다.
그러면 A는 패킷을 라우터에게 넘겨 목적지 호스트의 주소를 찾아오게 합니다.
#####자세한 내용은 4장에서…..#####
Chapter#4 에서 계속..