IP 주소

             1.              1.              1.              1

00000001.00000001.00000001.00000001

<----------- Network ID -----------><- Host ID ->

                       네트워크 개수           네트워크 규모

Network ID: 네트워크를 식별 → 네트워크의 갯수를 결정

Host ID: 호스트를 식별 → 네트워크의 규모를 결정(서버를 두기 위해 알아야 함)

               8bit, 2^8=256공간, 256-2=254

               2 빼는 이유: 네트워크 주소, 브로드캐스트 주소 사용으로 인해 호스트 주소에서 제외

Host: IP를 받을 수 있는 장비

↔ Guest: IP를 받을 수 없는 장비

 

CIDR(Classless Inter-Domain Routing)

서브넷팅: 네트워크를 여러개의 서브넷으로 나누는 행위, 여러개의 네트워크가 필요한 경우 실행

온전한 classful 비효율적 → 서브넷팅 → classless

낭비되는 IP 없이 효율적으로 사용하기 위한 목적

↔ classful

 

- 서브넷팅(Subnetting)

네트워크를 균등하게 나눔

 

네트워크 규모 × 네트워크 개수 = 원래 네트워크

 

방법1) 그리면서 하는 방식

1. 나에게 주어진 네트워크를 그리고, 규모를 표시한 후, 첫번째 주소와 마지막 주소를 표시한다.

2. 네트워크를 나눈다.

3. 나눈 네트워크의 첫번째와 마지막 주소를 적는다.

4. 각 네트워크의 대표(첫번째) 주소를 적어준다. 

5. 네트워크의 규모에 맞는  서브넷 마스크(prefix)를 각 네트워크의 대표 주소에 적어준다.

- 균등하게 나눈 네트워크들의 규모는 당연히 동일할 수 밖에 없음(prefix, 서브넷 마스크 다 동일)

 

방법2) 비트의 이동

1. 두개의 네트워크로 나눈다 = 네트워크의 갯수를 늘리는데 1비트를 더 할애한다.

2. 네트워크의 갯수를 늘리는데 1비트를 더 할애하면, 각 네트워크의 규모는 1비트만큼 줄어든다.

# 192.168.2.0 /24 네트워크가 주어졌다.
위 네트워크를 4개의 균등하고 제일 큰 네트워크로 서브넷팅 후 각 네트워크의 대표주소와 프리픽스를 구하시오.
192.168.2.0 /26
192.168.2.64 /26
192.168.2.128 /26
192.168.2.192 /26

 

풀이1) 4개의 네트워크로 나누기 

192.168.2.0

4 = 2^2 → 11000000 → 서브넷 마스크: 192(128+64)

prefix: 24 + 2 = 26

256/4 = 64 = 2^6 don't care 부분

.00 → 192.168.2.0 /26 ~ 192.168.2.63

.01 → 192.168.2.64 /26 ~ 192.168.2.127

.10 → 192.168.2.128 /26 ~ 192.168.2.191

.11 → 192.168.2.192 /26 ~ 192.168.2.255

풀이1

풀이2) 비트의 이동

나에게 주어진 비트 = 8비트

네트워크의 갯수를 늘리는데 사용해야하는 비트 = 2비트

네트워크 규모 = 6비트

256 - 규모(6비트=64) = 서브넷마스크(192)

서브넷마스크 = 192

255.255.255.192

풀이2

한 옥텟에서 서브넷팅 결과를 검산하는 방법

: 256 - 서브넷 마스크 = 네트워크 규모

# prefix가 25인 경우

2^8 = 128, 256 - 128 = 128

classful 네트워크

A class: Net ID 8bit (prefix = 8), Host ID 24bit

             맨앞비트가 0으로 고정

             0_______._________._________.________

             네트워크 개수 0 ~ 127(01111111): 2^7=128개

             네트워크 규모 2^24

B class: Net ID 16bit (prefix = 16), Host ID 16bit

             맨앞비트가 10으로 고정

             10______._________._________.________

             네트워크 개수 128(10000000).0.0.0 ~ 191(10111111).255: 2^14개

             네트워크 규모 2^16

C class: Net ID 24bit (prefix = 24), Host ID 8bit

             맨앞비트가 110으로 고정

             110_____._________._________.________

             네트워크 개수 192(10000000).0.0.0 ~ 223(11011111).255: 2^21개

             네트워크 규모 2^8

D class

E class

# 192.168.0.0 /22는 클래스풀한가?

prefix(Net ID, 고정된 부분)이 24가 아니므로 아님

# 192.168.0.0 /22는 C 클래스에 속하는가?

범위가 c 클래스에 속하긴 함

 

각 클래스별 사설네트워크

A클래스 10.0.0.0 ~ 10.255.255.255

→ 10.0.0.0 /8

B클래스 172.16.0.0 ~ 172.31.255.255

→ 172.16.0.0 /12

C클래스 192.168.0.0 ~ 192.168.255.255

→ 192.168.0.0 /16

사설 네트워크(Private Network)

IP 부족으로 인해 생긴 개념

사설 IP를 제외한 IP는 공인 IP로 봐도 무방하다. 

 

내부(private network를 사용하는 공간): 사설 네트워크 → 192.168.0.0

나갈때 관문: default gateway(내가 속해있는 네트워크와 같은 대역대의 IP여야 함) → 192.168.0.1

공유기

나오자마자: 공인 IP

외부(public network(public IP)를 사용하는 공간) : 118.218.200.33

서브넷 마스크

네트워크의 규모를 결정, 어디까지 Network ID를 고정하는데 쓰였는지 확인 가능

서브넷 마스크에서 1은 항상 연속되어야 하고, 0 다음에 1이 올 수 없음

서브넷 마스크의 다른 표현: prefix

                                255.        255.        255.              0

서브넷 마스크 11111111.11111111.11111111.00000000

IPv4 주소                192.        168.            0.            94

                    <--------- Network ID ---------><- Host ID ->

호스트 범위: 192.168.0.0 ~ 192.168.0.255

-2: 맨처음(0), 맨마지막(255) 못씀

→ 호스트 수: 256-2=254

나에게 192.168.2.0 /24 네트워크가 주어졌다.
위 네트워크를 4개의 균등하고 제일 큰 네트워크로 서브넷팅 하시오.
각 네트워크의 대표주소와 프리픽스를 구하시면 됩니다.

ex. 4강의실 네트워크

네트워크의 첫번째 주소 = 대표 주소 = 네트워크 주소: 192.168.0.0

서브넷 마스크: 255.255.255.0


#1

IPv4 주소:                     192.        168.        0.        94

                                   255.        255.        255.              0

서브넷 마스크1:  11111111.11111111.11111111.00000000

                    <--------- Network ID ---------><- Host ID ->

네트워크 규모: 2^8

대표 주소:                    192.         168.             0.               0

1의 범위:                     192.168.0.0 ~ 192.168.0.255

prefix: 24(8*3) → 192.168.0.0 /24


#2

IPv4 주소:                     192.        168.        0.        94

                                   255.        255.        252.              0

서브넷 마스크2:  11111111.11111111.11111100.00000000

                     <--------- Network ID ---------><- Host ID ->

네트워크 규모: 2^10

대표 주소:                     192.          168.              0.                0

2의 범위:                       192.168.0.0 ~ 192.168.3.255

(2bit → 00, 01, 10, 11 → 0 ~ 3)

prefix: 22 → 192.168.0.0 /22

 

192.168.1.1/24

: Net ID가 192.168.1까지임을 알 수 있다.   

호스트가 0이 아니므로 대표 주소(.00000000)가 아님을 알 수 있다.

브로드캐스트 주소(.11111111)는 마지막 주소이다.

 

호스트에게 부여할 수 있는 IP 수: 호스트 주소에서 대표 주소, 브로드캐스트 주소 2개를 뺌

대표 주소: 호스트 ID가 전부 0(처음)

브로드캐스트 주소: 호스트 ID가 전부 1(끝)

 

네트워크 공간을 나누는 경우: 사용하지 못하는 주소가 늘어난다.

네트워크 공간을 합치는 경우: 사용하지 못하는 주소가 줄어든다.

 

Cisco Packet Tracer

# 시스코 패킷트레이서 - 네트워크 시뮬레이터( ↔ 에뮬레이터)

같은 스위치(2계층)에 연결됐다 = 같은 네트워크다

- 스위치끼리는 같은 네트워크

- 라우터는 네트워크를 구분

Router CLI(Command Line Interface)

라우터에 콘솔케이블로 연결된 상태

 

Router>                    // 사용자 모드

 

Router>en

Router#>                  // 관리자 모드

 

Router#conf t

Enter configuration

Router(config) #      // 전역설정모드

# 전역설정모드 = 내가 치는 명령어가 장비(라우터) 전체영역에 영향을 끼침.

# 항상 인터페이스(포트)의 레이블 확인. 네트워크장비에서 포트는 (랜선을 꼽는) 인터페이스를 뜻한다.

# ip에 관련된 설정, add(주소)를 설정

 

# Ctrl + Insert (복사) , Shift + Insert (붙여넣기)

 

Router(config-if) #no ip add <인터페이스에 입력하고 싶은IP > <서브넷 마스크>

# 인터페이스(이더넷포트)에 설정된 ip 주소를 삭제.

 

Router(config-if) #no shut

# 아이피를 설정하고 난 후에는 반드시 해당 인터페이스를 동작시켜줘야 한다.

# 셧다운을 하지 않겠다 = 동작시키겠다.

 

Router(config-if) #do sh run

# 내가 설정한 값을 보여줘, 전역설정모드 이상에서는 앞에 항상 do를 붙인다

 

# 아이피 설정 및 no shut 명령을 통해 라우터의 f0/0번 포트가 잘 동작하는걸 확인 가능.

라우터는 네트워크를 구분하는 기능이 있다.

# 이 토폴로지는 총 두개의 네트워크로 구성되어있고, 라우터가 네트워크를 나누는(구분하는) 기능이 있기 때문에 라우터를 기준으로 서로 다른 (대역대의 IP) 네트워크를 구성한다.

# 두개의 네트워크가 서로 다른 대역을 가져야 하는 이유.

 

Router(config-if)#no ip add

Router(config-if)#ip add 192.168.2.250 255.255.255.0

Router(config-if)#no shut

Router(config-if)#do sh run

# 최종적으로 각 네트워크에 존재하는 pc끼리 통신이 되는지도 확인.