라우팅 프로토콜 & 라우티드 프로토콜 (약속, 규칙)
1) 라우팅 프로토콜
라우팅 간의 데이터를 교환하기 위한 규칙
- 내부 라우팅 프로토콜 (IGP) :
-> 정적 라우팅 프로토콜 : Static
-> 동적 라우팅 프로토콜 : RIP, EIGRP, OSPF
- 외부 라우팅 프로토콜 (EGP) : EGP
2) 라우티드 프로토콜
인터넷을 하기 위한 규칙
회사 사용 OS 프로토콜
- ISO -> OSI 7 Layer
- 마이크로소프트 사 -> Windows OS --> TCP/IP
- 애플 사 -> IOS --> AppleTalk
- 노벨 사 --> IPX/SPX
서로 다른 프로토콜을 통신하도록 해주는 것이 게이트웨이 입니다.
IP주소의 이해
패킷(이더넷) = 512byte
컴퓨터의 최소단위 : Bit
컴퓨터의 기본단위 : Byte (8bit)
위와같이 0, 1로 표현하는 값을 디지털 코드 또는 2진수라고 한다.
0 0 0 0 0 0 0 0
2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
128 64 32 16 8 4 2 1
IP주소는 8bit의 최소값인 0부터 8bit의 최댓값인 255까지 사용
IPv4는 4byte로 이루어져 있다.
ex) 172.16.1.150/24
1010 1100 . 0001 0000 . 0000 0001 . 1001 0110
아이피 주소의 첫번째값과 마지막값은 상징을 의미하므로 사용할 수 없다.
그래서 실제 사용 가능한 아이피 범위는 두번째~마지막 바로 앞 주소까지 사용 가능하다.
IP Address
cmd 창으로 IP구성 정보를 확인해 봅시다.
ipconfig -all : 유선 네트워크 정보 확인 (자세하게)
iwconfig : 무선 네트워크 정보 확인

노드 유형 : IPv4인가 IPv6인가
물리적 주소(MAC Address) : 해당 장비의 주소이며 고유한 값을 가집니다.
서브네팅, 슈퍼네팅
서브네팅
=> 기본 그룹을 나누는 것 (컴퓨터 대수는 감소하고, 네트워크 대역은 증가한다)
슈퍼네팅
=> 서브네팅된 네트워크를 합치는 것 (컴퓨터 대수는 증가하고, 네트워크 대역은 감소한다)
서브넷 마스크
IP 172.16.1.150/24 에서 24 부분은 서브넷 마스크를 뜻합니다.
24의 서브넷 마스크 : 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000
여기서 1이 있는 24번째 비트까지는 네트워크 부분(공인IP)이며
나머지 0이 있는 비트가 호스트 부분(사설IP)입니다.
서브넷 마스크 값이 prefix값으로 나타날 경우 변경하는 방법
ex) 192.168.5.144/11
비트수 11을 8로 나눈다
몫: 1 -> 255의 갯수
나머지: 3 -> 연속되는 1의 갯수
=> 255 . 1110 0000 . 0 . 0
=> 255. 224. 0. 0
256 - 서브넷값 = 1개 그룹당 할당 가능한 IP숫자를 의미
위의 예제에선 256 - 224 = 32 이므로 1개 그룹이 32개의 범위를 갖는다.
ip subnet-zero
이전에는 0으로 시작하는 서브넷과 255로 끝나는 서브넷은 사용이 불가능 했습니다.
하지만 IP 낭비가 심한 관계로 지금은 해당 서브넷도 사용 가능하도록
하는 명령이 기본으로 들어가서 해당 서브넷을 사용할 수 있습니다.
공인IP와 사설IP
IPv4 주소 체계
1. 공인 IP (Public IP Address)
-> 전 세계에서 유일한 주소
-> 비용을 지불하고 서비스 받는 아이피 주소
2. 사설 IP (Private IP Address)
-> 공인 IP 주소가 모자르므로 절약하기 위해 사용
-> 공유기 등의 네트워크 장비에 의해서 공통으로 사용하고 만든 IP주소
-> IP가 중복될 수 있다.
-> 사설 IP는 인터넷에 연결할 수 없다.
-> 내부에서 사용하는 사설 IP 주소를
인터넷에서 사용하는 공인 IP 주소로
변환해주는 NAT 서비스가 있다.
=> 가정집에서는 공유기 안에 내장됨
=> 회사에서는 라우터에 NAT기능이 내장됨
3. IPv4 주소는 5개 Class로 구성된다.
공인 사설 서브넷마스크 사설IP개수
A Class 0 - 126 10.0.0.0 - 10.255.255.255 /8 1600만
B Class 128 - 191 172.16.0.0 - 172.31.255.255 /16 65536
C Class 192 - 223 192.168.0.0 - 192.168.255.255 /24 256
---------------------------------------
D Class 224 - 239 장비 전용(멀티캐스트)
E Class 240 - 255 연구소 전용
A Class는 첫 비트가 반드시 0으로 시작, 즉 최대 수가 127 입니다.
그러나 127은 자가진단용 IP로 사용하므로 0 - 126이 A Class의 범위가 됩니다.
B Class는 첫 비트가 반드시 10으로 시작
C Class는 첫 비트가 반드시 110으로 시작
D Class는 첫 비트가 반드시 1110으로 시작
A Class의 사설IP
10.0.0.0 ~ 10.255.255.255
B Class의 사설IP
172.16.0.0 ~ 172.31.255.255
C Class의 사설IP
192.168.0.0 ~ 192.168.255.255
IPv4는 2009년에 이미 할당이 고갈되었습니다.
그래서 고안된 것이 IPv6(128비트) 입니다.
IPv6는 16비트의 숫자가 8개 모여있는 형태입니다.
1111:2222:3333:AAAA:5555:BBBB:EEEE:FFFF
진수의 이해
2진수 -> 0 1 -> 1bit
- 컴퓨터가 실제로 사용하는 진법
4진수 -> 00 01 10 11 -> 2bit
8진수 -> 000 001 010 011 100 101 110 111 -> 3bit
10진수
- 사람이 사용하는 진법
16진수 ->
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
- 긴 2진수를 짧게 표기하기 위해 보편적으로 사용하는 진법
2진수 빠르게 더하는 방법
128 64 32 16 8 4 2 1
1은 제외하고
2+8 = 10
4 + 16 = 20
8 + 32 = 40
16 + 64 = 80
32 + 128 = 160
위와 같이 한 비트씩 띄워서 더하면 10으로 떨어져 쉽게 계산할 수 있다.
실습
168(10)을 n진수로 변환해 봅시다.
Hint: 2진수로 변환한 후 목적 진수로 다시 변환해 봅시다.
2진수 -> 10101000(2)
4진수 -> 10 10 10 00 (2) -> 2220(4)
8진수 -> 010 101 000 (2) -> 250(8)
16진수 -> 1010 1000 (2) -> A8(16)
2> fe80(16)을 10진수로 변환해 봅시다.
2진수 -> f e 8 0 (16) -> 1111 1110 1000 0000 (2)
10진수 -> 128 + 512 + 1024 + 2048 + 4096 + 8192 + 16384 + 32768 = 65152(10)
다음 빈칸을 채워봅시다.
| Host IP Address | Address Class | Network Address | Host Address | Network Broadcast | Default Subnetmask |
| 216.14.55.137 | C Class | 216.14.55.0 | .137 | 216.14.55.255 | 255.255.255.0 |
| 123.1.1.15 | A Class | 123.0.0.0 | .1.1.15 | 123.255.255.255 | 255.0.0.0 |
| 150.127.221.244 | B Class | 150.127.0.0 | .221.244 | 150.127.255.255 | 255.255.0.0 |
| 194.125.35.199 | C Class | 194.125.35.0 | .199 | 194.125.35.255 | 255.255.255.0 |
| 175.12.239.244 | B Class | 175.12.0.0 | .239.244 | 175.12.255.255 | 255.255.0.0 |
| Class | Subnet Mask | Range | Network-ID | Broadcast-ID | Valid Range | Gateway | |
| 192.168.5.144/11 | C | 255.224.0.0 | 192.160.0.0 - 192.191.255.255 |
192.160.0.0 | 192.191 .255.255 |
192.160.0.1 - 192.191 .255.254 |
192.191 .255.254 |
| 192.168.5.144/19 | C | 255.255.224.0 | 192.168.0.0 - 192.168.31.255 |
192.168.0.0 | 192.168 .31.255 |
192.168.0.1 - 192.168 .31.254 |
192.168 .31.254 |
| 192.168.5.144/28 | C | 255.255.255.240 | 192.168.5.144 - 192.168.5.159 |
192.168.5.144 | 192.168 .5.159 |
192.168.5.145 - 192.168.5.158 |
192.168 .5.158 |
1. Class
2. 서브넷 마스크
3. Range(전체 범위)
4. Network-ID
5. Broadcast-ID(마지막주소)
6. Valid Range(사용 가능한 범위)
7. 게이트웨이(사용가능한 마지막 주소를 할당하기)
서브넷 IP문제 랜덤하게 내주는 사이트
http://www.subnettingquestions.com/
subnettingquestions.com - Free Subnetting Questions and Answers Randomly Generated Online
Question: What is the broadcast address of the network 192.168.96.128 255.255.255.128?
www.subnettingquestions.com

서브넷 마스크 240(10) = 255.255.255. 1111 0000(2)
현재 IP 196(10) = 255.255.255. 1100 0100(2)
범위 : 1100 0000 = 192(10)
- 1100 1111 = 207(10)
범위 : 172.24.84.192 - 172.24.84.207

범위가 172.16.0.0 - 172.16.1.255 이므로 첫 IP와 마지막 IP를 제외하고 510개의 호스트가 되며,
172.16.0.0은 B클래스이므로 IP의 3번째 수부터 서브넷이 나눠집니다.
3번째 수의 서브넷의 범위가 2이므로
256 / 2 = 128
서브넷 수는 128개가 됩니다.
172.24.0.0을 각각 900개 이상의 호스트를 가진 40개 이상의 서브넷으로 나누려면
서브넷 마스크를 무엇으로 주어야 합니까?
1111 1111. 1111 1111. 0000 0000. 0000 0000
1111 1111. 1111 1111. 1000 0000. 0000 0000 2개의 서브넷으로 나뉨
1111 1111. 1111 1111. 1100 0000. 0000 0000 4개의 서브넷으로 나뉨
1111 1111. 1111 1111. 1110 0000. 0000 0000 8개의 서브넷으로 나뉨
1111 1111. 1111 1111. 1111 0000. 0000 0000 16개의 서브넷으로 나뉨
1111 1111. 1111 1111. 1111 1000. 0000 0000 32개의 서브넷으로 나뉨
1111 1111. 1111 1111. 1111 1100. 0000 0000 64개의 서브넷으로 나뉨
100 0000 0000 = 1024 이므로 호스트 수는 1024개이다.
서브넷 마스크: 255.255.252.0
