이론
VLSM (Variable Length Subnet Mask)
1) 네트워크를 크기순으로 배열
2) 각 네트워크를 계산
3) 다음 네트워크의 대표주소도 자연스럽게 결정
네트워크의 주소부터 계산하는 것보다, 크기 순서대로 배열하면 틀릴 일이 없으니까 그렇게 계산해라.
10.10.10.0 /24 VLSM
1. 60 host = 64 → 10.10.10.128/26
2. 120 host = 128 → 10.10.10.0/25
3. 33 host = 64 → 10.10.10.192/26
라우팅 프로토콜 (정적, 동적)
정적 프로토콜과 동적 프로토콜
정적 프로토콜
Distance Vector : RIP(Routing Information Protocol)
가공된 정보를 제공한다.
동적 프토토콜
Link- state : OSPF(Open-Shortest Path First)
OSPF를 주로 사용할 것이고, 매우 중요하다.
가공되지 않은 정보를 제공한다.
R2
R1 R4
R3
스스로 계산해서 어떤 packet을 보낼지 정보를 알아서 구성한다.
무조건 Area 0 이 존재 해야한다.(백본 area)
내가 속한 네트워크를 전부 광고(Advertising)해준다.
와일드카드 마스크
IP 주소에서 비트 단위의 마스크를 의미한다.
- '0' 은 해당 비트 위치에서 정해진 비트 값과 정확하게 일치해야 한다. (일치 여부 검사 필요)
- '1' 은 해당 비트 위치에서 어떠한 비트 값과도 일치할 수 있다. (일치 여부 검사 불필요)
- 즉, 비트 '1' 값이면, 0 또는 1 모두 허용한다.
SM에서 1= fixed, 0=don't care
와일드카드 마스크 0=fixed, 1= Don't care
1.1.1.10
00000001.00000001.00000001.00001010 => IP주소
00000000.00000000.00000000.00000000 => 0,1을 바꾸면 Subnet Mask
→ 모든 자리가 일치해야 한다 = 1.1.1.10 그 자체다.
디테일하게 대상을 한정지을 수 있다.
세세하게 대상을 컨트롤하고 싶을 때 Wildcard Mask를 많이 쓴다.
Routing Protocol에서도 Wildcard Mask를 많이 쓴다.
실습
VLSM 이론
10.20.30.40 /24
A 네트워크 = 31 host
B 네트워크 = 100 host
C 네트워크 = 14 host
VLSM으로 IP 낭비가 최소화되도록 서브넷팅 하세요.
B = 100 host → 규모: 128 = 2^7→ /25 → 10.20.30.0 /25
A = 31 host → 규모: 64=2^6 → /26 → 10.20.30.128 /26
C = 14 host → 규모: 64=2^4 → /28 → 10.20.30.192 /28
VLSM 실습
구해야하는 네트워크
211.183.3.128 /27
필요한 것
10 host → 규모 16 = 4비트 필요함 → 211.183.3.128 /28
2 host → 규모 4 = 2비트 필요 → 211.183.3.144 /30
2 host → 규모 4 = 2비트 필요 → 211.183.3.148 /30
# <R1>
Router(config-if)#int f0/1
Router(config-if)#ip add 211.183.3.145 255.255.255.252
Router(config-if)#no sh
Router(config-if)#ip helper-address 211.183.3.150
Router(config-if)#int f1/0
Router(config-if)#ip add 211.183.3.129 255.255.255.240
Router(config-if)#no sh
Router(config-if)#ip helper-address 211.183.3.150
Router(config-if)#int f0/0
Router(config-if)#ip add 211.183.3.149 255.255.255.252
Router(config-if)#no sh
# <R2>
Router(config)#int f0/0
Router(config-if)#ip add 211.183.3.150 255.255.255.252
Router(config-if)#no sh
Router(config-if)#do ping 211.183.3.149
Router(config-if)#ip route 211.183.3.144 255.255.255.252 211.183.3.149
Router(config)#ip route 211.183.3.128 255.255.255.240 211.183.3.149
Router(config)#do ping 211.183.3.145
Router(config)#do ping 211.183.3.129
Router(config)#ip dhcp pool 1
Router(dhcp-config)#network 211.183.3.144 255.255.255.252
Router(dhcp-config)#default-router 211.183.3.145
Router(dhcp-config)#exit
Router(config)#ip dhcp pool 2
Router(dhcp-config)#network 211.183.3.128 255.255.255.240
Router(dhcp-config)#default-router 211.183.3.129
Router(dhcp-config)#exit
Router(config)#ip dhcp excluded-address 211.183.3.145
Router(config)#ip dhcp excluded-address 211.183.3.129
OSPF 실습
바이러스 및 위협 방지 설정을 모두 끈다.
GNS 프로그램을 통해 IOS router를 설정한다.
이후 GNS 프로그램으로 라우터를 설정한다.
- OSPF 설정
- 무조건 Area 0이 존재해야 한다. (백본 area)
- 내가 속한 네트워크를 광고(Advertising)해준다.
- OSPF 광고 방법
- 인터페이스의 주소 자체를 광고(되도록이면 이걸 쓰는게 좋다)
- network <직접 연결된 네트워크의 대표주소> <와일드카드 마스크> <area nubmer>
- 속한 대역을 직접 광고
- network <직접 연결된 네트워크의 대표주소> <와일드카드 마스크> <area nubmer>
- ex) 1.1.1.0 /24
- network 1.1.1.0 0.0.0.255 area 0
- 인터페이스의 주소 자체를 광고(되도록이면 이걸 쓰는게 좋다)
- OSPF 명령어
- router ospf 10
- router = 라우팅 프로토콜, ospf = ospf 프로토콜, 10 = <process ID>.
- router-id 1.1.1.1
- 각 라우터를 식별
- network 1.1.1.10 0.0.0.0 area 0
- network = 광고, 1.1.1.10 = 내가 갖고 있는 인터페이스 주소, 0.0.0.0 = 와일드 카드 마스크, area, 0 = backbone area, OSPF를 구성할 때 반드시 존재해야 하는 area
- router ospf 10
# <R1>
R1(config-if)#int f0/0
R1(config-if)#ip add 1.1.1.10 255.255.255.0
R1(config-if)#no sh
R1(config-router)#router ospf 10
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 1.1.1.10 0.0.0.0 area 0
# <R2>
R2(config-if)#int f0/0
R2(config-if)#ip add 1.1.1.20 255.255.255.0
R2(config-if)#no sh
R2(config-if)#int f0/1
R2(config-if)#ip add 2.2.2.10 255.255.255.0
R2(config-if)#no sh
R2(config-if)#router ospf 10
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 1.1.1.20 0.0.0.0 area 0
R2(config-router)#network 2.2.2.10 0.0.0.0 area 0
# <R3>
R3(config)#int f0/1
R3(config-if)#ip add 2.2.2.20 255.255.255.0
R3(config-if)#no sh
R3(config-if)#router ospf 10
R3(config-router)#router-id 3.3.3.3
R3(config-router)#network 2.2.2.20 0.0.0.0 area 0
과제
과제1 : OSPF
내부(사설) 네트워크 10.10.10.128 /25
A - 40 host → 10.10.10.128 /26
B - 10 host → 10.10.10.192 /28
R1-R2 → 128.30.20.16 /30
R2-R3 → 128.30.20.20 /30
OSPF 설정
1. 라우터ID
2. 광고 - do sh ip int br 정보를 보면서 모든 인터페이스를 광고
# <R1>
# 기본설정
R1(config-if)#int f0/0
R1(config-if)#ip add 128.30.20.17 255.255.255.252
R1(config-if)#no sh
R1(config-if)#do ping 128.30.20.18
# OSPF 라우팅
R1(config-if)#router os 10
R1(config-router)#router-id 1.1.1.1
R1(config-router)#do sh ip int b
# 광고하기 위해 내가 갖고 있는 인터페이스들을 확인
R1(config-router)#network 128.30.20.17 0.0.0.0 a 0
R1(config-router)#net 10.10.10.130 0.0.0.0 a 0
# DHCP helper address 설정
R1(config-router)#int f0/1
R1(config-if)#ip helper-address 128.30.20.18
#dhcp client가 속한 네트워크의 GW인터페이스에서 discover 메세지가 dhcp server에 도달할 수
있도록 helper-address 설정.
# 128.30.20.18 = dhcp server
# <R2>
# 기본 설정
R2(config)#int f0/0
R2(config-if)#ip add 128.30.20.18 255.255.255.252
R2(config-if)#no sh
R2(config-if)#int f0/1
R2(config-if)#ip add 128.30.20.21 255.255.255.252
R2(config-if)#no sh
# OSPF 라우팅
R2(config-if)#router os 10
R2(config-router)#router-id 2.2.2.2
R2(config-router)#do sh ip int br
R2(config-router)#net 128.30.20.18 0.0.0.0 a 0
R2(config-router)#net 128.30.20.21 0.0.0.0 a 0
# DHCP pool 설정
R2(config-router)#ip dhcp pool a
R2(dhcp-config)#default-router 10.10.10.130
R2(dhcp-config)#network 10.10.10.128 255.255.255.192
R2(dhcp-config)#exit
R2(config)#ip dhcp pool b
R2(dhcp-config)#default-router 10.10.10.200
R2(dhcp-config)#network 10.10.10.192 255.255.255.240
R2(dhcp-config)#exit
R2(config)#ip dhcp excluded-address 10.10.10.130
R2(config)#ip dhcp excluded-address 10.10.10.200
# <R3>
# 기본설정
R3(config)#int f0/1
R3(config-if)#ip add 128.30.20.22 255.255.255.252
R3(config-if)#no sh
R3(config-if)#int f0/0
R3(config-if)#ip add 10.10.10.200 255.255.255.240
R3(config-if)#no sh
R3(config-if)#do ping 128.30.20.21
# OSPF 라우팅
R3(config-if)#router os 10
R3(config-router)#router-id 3.3.3.3
R3(config-router)#do sh ip int b
R3(config-router)#net 10.10.10.200 0.0.0.0 a 0
R3(config-router)#net 128.30.20.22 0.0.0.0 a 0
R3(config-router)#do ping 10.10.10.130 source 10.10.10.200
# helper-address 설정
# source : 출발지를 10.10.10.200으로 지정
R3(config-router)#int f0/0
R3(config-if)#ip helper-address 128.30.20.21
과제2 : VLSM
1) 192.168.0.0 /24 위 네트워크를 나누어 각 팀별로 운영 120대 , 마켓 60대 , 홍보 30대 ,영업 2대 , 인사 2대의 호스트를 두고자 한다. 적절하게 VLSM 하여 팀별 서브넷을 구하시오.
운영 : 마켓 : 홍보 : 영업 : 인사 :
2) 아래의 그림을 적절하게 VLSM 하여 최적의 서브넷을 구하시오
Branch1의 네트워크 :
Branch2 의 네트워크:
Branch3 의 네트워크:
Central 의 네트워크:
Branch1 - Central 의 네트워크:
Branch2 - Central 의 네트워크:
Branch3 - Central 의 네트워크:
R1의 네트워크
R2의 네트워크
R3의 네트워크
*20% 증설계획은 무시하고 푸세요!
R1-R2의 네트워크
R2-R3의 네트워크
R3-R1의 네트워크
'🎆 Cloud Practice > 🧪 On-Premise' 카테고리의 다른 글
VLAN 설정을 해보자 (0) | 2023.09.04 |
---|---|
NAT에 대해 알아보자 (0) | 2023.09.01 |
라우터와 스위치, 사설 IP, 네트워크 연결 (0) | 2023.08.30 |
Host ID, Subnet Mask, CIDR, Packet Tracer, Routing (0) | 2023.08.29 |
Cloud, Network (0) | 2023.08.28 |