[] 슬라이드 1

Download Report

Transcript [] 슬라이드 1

3
Switching/Routing
Objectives
본 장에서는 스위치와 라우터의 기능과 역할에 대해 살펴 본다.
이번 장의 내용은 :
 스위치와 라우터에 대하여 알아본다.
 스위치와 라우터의 동작을 살펴본다.
이번 장을 배우면 스위치와 라우터의 기본 사용법에 대해서 알게 될 것
이다.
인터 네트워크
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치
• 스위칭과 포워딩, 블록킹, 플러딩
• 스패닝 트리 프로토콜
• Virtual LAN(VLAN)
• 스위치와 허브
스위칭
스위칭이란?
대역폭 전용(dedicated-bandwidth) 방식의 스위치드(Switched) LAN
을 구성할 수 있게 해주는 기술로, 대역폭 공유와 달리 LAN이 가질 수
있는 최대 대역폭을 디바이스들 역시 그대로 보유할 수 있도록 하는 것
이다. 예를 들어 10Mbps 이더넷을 스위치드 방식으로 구축할 경우 여
기에 몰리는 PC들은 모두 10Mbps 대역폭을 보장받는 것이다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
2계층 스위칭 오버뷰
•
브리지와 마찬가지로 스위치는 네트워크를 여러 개의 충돌도메인(Collision
Domain)으로 분할한다.
- 충돌 도메인 : 같은 물리적 매체에 연결된 장치들의 집합을 말하는데, 2개의 장치가 동시에 매체에
접근하려고 하는 경우 두 신호가 충돌한다.
- 브로드캐스트 도메인 : 다른 장치의 브로드캐스트 메시지를 수신하는 장비들의 집합이다.
•
스위치의 세가지 기능
- 어드레스 학습 : Layer-2 Switch와 Bridge는 Interface에 수신된 각 frame의 Source address정보
를 MAC database에 등록한다.
- 패킷 전달 및 필터링 : Interface에 Frame이 수신되었을 때, 스위치는 수신지 하드웨어의 어드레스
를 참조하고 MAC database에서 exit interface를 찾는다.
- 루프 방지 : Redundancy를 위하여 스위치간의 다중 연결을 구성한 경우 네트워크 루프가 발생할
수 있다. STP (Spanning-Tree Protocol)는 네트워크 루프를 방지하고 Redundancy 를 허용한다.
•
스위치 운용모드
- 저장 전달(Store-and-forward) : 프레임을 완전히 수신한 다음에 전달해야 한다. 수신지 어드레스
와 송신지 어드레스를 읽고, CRC 검사를 수행하고, 관련된 필터를 적용한 다음에야 프레임을 전달
한다.
- 컷 스루(cut-through) : 헤더가 수신되자마자 수신지 어드레스를 검사하고 곧바로 프레임 전달을
시작한다.
- 프레그먼트 프리(fragment-free) : 프레임을 전달하기 전에 프레임의 처음 64바이트를 읽는다. 일
반적으로 충돌은 처음 64바이트 안에서 발생한다. 스위치는 64바이트를 읽어서 충돌 프레임을 걸
러낼 수 있다. 프레그먼트 프리 스위칭은 카탈리스트 1900의 기본 운용 모드이다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
어드레스 학습 기능
A
C
•
B
E0
E1
E2
E3
D
초기상태에서의 스위치는 MAC address table이 비어 있다.
MAC address table
E0: 0260.8c01.1111
A
0260.8c01.1111
C
0260.8c01.2222
B
E0
E1
E2
E3
0260.8c01.3333
D
0260.8c01.4444
• 호스트 A 에서 호스트 C 로 프레임을 보내게 되면 스위치는 E0 포트에 호스트 A 의
MAC Address 를 기록한다. 이때 목적지 주소가 MAC address Table 에 없으므로
다른 모든 스위치 포트로 프레임을 Flooding 한다. (unknown unicasts are flooded)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
어드레스 학습 기능
MAC address table
E0: 0260.8c01.1111
E3: 0260.8c01.4444
A
0260.8c01.1111
C
0260.8c01.2222
B
E0
E1
E2
E3
0260.8c01.3333
D
0260.8c01.4444
• 송신지 주소인 0260.8c01.4444를 MAC address Table에 저장한다.
• 전송된 프레임 내에 있는 수신지 주소인 0260.8c01.2222(C 스테이션)를 MAC
어드레스 테이블의 엔트리들과 비교한다.
• 수신지에 대한 포트 MAC 어드레스 매핑이 없다는 판단이 설 경우 소프트웨어는
프레임이 수신된 포트를 제외한 모든 포트로 프레임을 플러딩 시킨다.
• C 스테이션이 A 스테이션으로 프레임을 전송할 때 스위치는 C 스테이션의 E2포트
MAC 어드레스 매핑을 학습할 수 있다.
• 모든 스테이션이 데이터 프레임을 전송하고 MAC 어드레스 테이블 엔트리가 유효한
상태를 유지할 경우 완벽한 MAC 어드레스 테이블이 만들어진다. 스위치는 이
엔트리를 사용하여 전달 및 필터링 결정 작업을 지능적으로 수행할 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
어드레스 학습 기능
MAC address table
A
0260.8c01.1111
C
0260.8c01.2222
•
•
•
•
E0:
E2:
E1:
E3:
E0
E2
0260.8c01.1111
0260.8c01.2222
0260.8c01.3333
0260.8c01.4444
X
X
E1
E3
B
0260.8c01.3333
D
0260.8c01.4444
A 스테이션이 C 스테이션으로 프레임을 보내는 과정은 다음과 같다.
전송된 프레임으로부터 얻은 수신지 MAC 어드레스인 0260.8c01.2222를
MAC 어드레스 테이블의 엔트리들과 비교한다.
수신지 MAC 어드레스가 포트 E2를 통해 전달될 수 있다고 판단한 스위치는
이 포트로만 프레임을 재전송한다.
대역폭을 보존하고 이 링크들 사이의 충돌을 방지하기 위하여 스위치는 E1
포트와 E3 포트에 프레임을 재전송하지 않는다. 이 동작을 프레임 필터링
(frame filtering)이라고 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Broadcast/Multicast Flooding
MAC address table
A
0260.8c01.1111
C
0260.8c01.2222
•
•
•
E0:
E2:
E1:
E3:
0260.8c01.1111
0260.8c01.2222
0260.8c01.3333
0260.8c01.4444
E0
E1
E2
E3
B
0260.8c01.3333
D
0260.8c01.4444
호스트 D 가 Broadcast 나 Multicast 프레임을 전송 할 경우 스위치는 입력
받은 포트를 제외한 모든 포트에 프레임을 Flooding 한다.
스위치는 Default로 Broadcast, Multicast, Unknown unicast address
frame을 Flooding한다.
스위치는 통과하는 frame의 source MAC address를 보고 MAC address
table을 만든다. 그런데 broadcast/multicast frame은 어떠한 frame의
source MAC address가 될 수 없기 때문에 MAC address table에 등록될 수
없고 따라서 모두 flooding 된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
이중화 토폴로지
Server/host X
Router Y
Segment 1
Segment 2
•
•
•
•
Redundant Topology 는 네트워크 연결경로를 두 개 이상 가지고 있어 에러
발생시 안정성을 높여준다.
루프 회피 서비스가 작동되지 않을 경우 각 스위치는 브로드캐스트 프레임을
계속 플러딩할 것이다. 이 상황을 대개 브리지 루프라고 한다. 루프를 통해서
브로드캐스트 프레임이 계속 전파될 경우 브로드캐스트 폭풍 현상이 생겨서
종국에 가서는 대역폭이 낭비되어서 네트워크와 호스트의 성능에 심각한 악
영향을 끼치게 된다.
브로드캐스트가 아닌 프레임의 여러 복사본들은 수신지 스테이션으로 전달
될 것이다. 많은 프로토콜은 각 송신에 대해서 1개의 복사본만을 수신하기를
기대하는데 동일한 프레임의 복사본을 여러 개 수신할 경우 복구할 수 없는
에러가 야기된다.
동일한 프레임의 복사본이 스위치의 다른 포토들로부터 수신될 경우 결국
MAC 어드레스 테이블 내용의 안정성이 훼손된다. MAC 어드레스 테이블에
불필요한 어드레스를 복사하는 일에 스위치가 자원을 소모할 경우 데이터 전
달 작업에도 나쁜 영향이 미친다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
브로드캐스트 폭풍
Server/host X
Router Y
Segment 1
Switch A
Broadcast
Switch B
Segment 2
•
•
•
•
•
•
브로드캐스트 폭풍이 순차적으로 어떤 경과를 거쳐서 발생하는지 살펴본다.
X호스트가 브로드캐스트 프레임을 전송할 때, 예를 들어 Y라우터의 기본 게
이트웨이를 찾기 위하여 ARP 프레임이 A스위치에 의해 수신된다.
A스위치는 프레임에 있는 수신지 어드레스 필드를 검사하여 프레임이 아래
쪽 이더넷 링크인 2번 세그먼트로 플러딩 되어야 한다는 결정을 내린다.
프레임의 복사본이 B 스위치에 도착할 때 이 과정이 반복되고, 프레임의 복
사본이 위쪽 이더넷인 1번 세그먼트로 전송된다.
프레임의 원래 복사본은 스위치 A에 도착한 후 얼마 지나지 않아서 1번 세그
먼트의 B 스위치에 도달하기 때문에 이는 2번 세그먼트의 B 스위치로도 전
달되었다. 수신지 스테이션이 해당 프레임의 복사본을 수신한 후에도 이 프
레임은 양쪽에서 루프를 만들면서 계속 왔다 갔다 한다.
루프 회피 솔루션은 정상 운용 중에 4개의 인터페이스들 중 하나가 프레임을
송신하거나 수신하지 못하도록 함으로써 이 문제를 극복한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
프레임 중복 전송
Server/host X
Unicast
Router Y
Segment 1
Unicast
Unicast
Switch A
Switch B
Segment 2
•
•
•
•
•
X호스트가 Y라우터로 유니캐스트 프레임을 전송할 때 직접 연결되어 있는 1
번 이더넷 세그먼트를 통해 1개의 복사본이 수신된다. 수신 조금 전이나 조
금 후에 A 스위치가 복사본을 수신하여 이를 버퍼에 저장한다.
A 스위치가 프레임의 수신지 어드레스 필드를 조사하여 Y 라우터에 대한 정
보를 MAC 어드레스 테이블에서 찾지 못할 경우 A 스위치는 수신된 포트를
제외한 나머지 모든 포트로 해당 프레임을 플러딩 시킨다.
B 스위치가 2번 세그먼트의 A 스위치를 통해 프레임의 복사본을 수신할 때
Y 라우터에 대한 정보가 MAC 어드레스 테이블에 없을 경우 B 스위치 역시 1
번 세그먼트로 프레임의 복사본을 전달한다.
Y 라우터가 동일한 프레임의 복사본을 두 번 수신한다.
루프 회피 솔루션은 정상 운용 중에 4개의 인터페이스들 중 하나가 프레임을
솓신하거나 수신하지 못하도록 함으로써 이 문제를 극복한다. 이것은 STP의
또 다른 목적이기도 하다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
데이터베이스 불안정성
Server/host X
Router Y
Segment 1
Unicast
Unicast
Port 0
Switch A
Port 0
Switch B
Port 1
Port 1
Segment 2
•
•
•
•
•
•
X 호스트가 유니캐스트 프레임을 Y 라우터로 전송한다.
Y 라우터의 MAC 어드레스를 학습한 스위치가 아직 없다.
A 스위치와 B 스위치가 0번 포트에서 X 호스트의 MAC 어드레스를 학습한다.
Y 라우터로 가는 프레임이 플러딩된다.
A 스위치와 B스위치가 1번 포트에서 X 호스트의 MAC 어드레스를 부정확하
게 학습한다.
스위치의 내부 구성에 따라 MAC 데이터베이스가 빠르게 변경되는 것에 적
절하게 대처할 수도 있고 그렇지 못할 수도 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning Tree Protocol
Segment A
1/1
2/1
1/2
Segment B
•
•
•
X
Reference Point
2/2
STP는 중복된 Link를 발견하여 중복된 Link의 한 Port를 Stand-by Mode
(Blocking)로 하여 Bridging Loop을 방지하고, Link Failure 등 Topology에
변화가 발생하는 경우 Blocking Port를 Forwarding State로 바꾼다.
STP 는 loop-free redundant network topology를 제공.
Spanning-Tree Protocol 의 역사
- Bridge-to-bridge protocol developed by Digital Equipment Corporation(DEC).
- Revised by IEEE 802 committee and published in the IEEE 802.1d STP.
- Cisco Catalyst Switch에 의해 사용.
- Enabled by default in Catalyst Switchs.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning Tree Operations
•
•
•
Network당 하나의 Root Bridge선정.
Non-Root Bridge마다 하나의 Root Port선정.
Segment별로 하나의 Designated Port선정.
1단계
2단계
3단계
4단계
보다 낮은
보다 낮은
보다 낮은
보다 낮은
Root BID
Path Cost
Sender BID
Port ID
Sending BID = 8000. 0000.0c4a.ce11
Root ID = 8000. 0000.0c4a.ce11
Port ID = 8005
Path Cost = 0
100baseT
Designated port (F)
Root port (F)
Root bridge
Non-root bridge
SW X
SW Y
Designated port (F)
X
Non-designated port (B)
10baseT
C1900 Web
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning Tree Protocol에서 Root Bridge 선정
100baseT
Port 0
Switch X
Default priority 32768
MAC 0c0011111111
Designated port (F)
Root port (F)
Port 0
Switch Y
Default priority 32768
MAC 0c0022222222
Root bridge
Port 1
Port 1
Designated port (F)
x
Nondesignated port (B)
10baseT
1단계
2단계
3단계
4단계
•
•
•
•
보다 낮은
보다 낮은
보다 낮은
보다 낮은
Root BID
Path Cost
Sender BID
Port ID
Path Cost
Bridge ID(Priority + Mac Address)가 가장 낮은 스위치가 Root Bridge가 된
다. Broadcast Domain별로 오직 하나의 스위치가 Root Bridge가 된다.
루트 브리지의 모든 포트는 전달 상태가 되고, 이 포트를 지정포트
(designated port)라고 한다. 포트는 전달 상태에 있을 때 트래픽을 송수신할
수 있다.
루트포트는 루트브리지가 아닌 브리지에서 루트 브리지에 이르는 가장 낮은
코스트의 경로를 갖는다. 루트 포트는 전달 상태에 있고 루트 브리지로 향하
는 연결을 갖고 있다.
하나의 세그먼트에 하나의 지정 포트만이 존재하기 때문에 Y 스위치에 있는
10baseT 이더넷 포트는 지정포트가 아니다. 루트 토폴로지가 되는 것을 방
지하기 위하여 지정 포트가 아닌 포트들은 차단 상태로 만든다. 포트가 차단
상태라면 포트는 트래픽을 보내거나 받지 않는다. 이것이 포트가 사용 불가
상태라는 뜻은 아니다. 스패닝 트리가 사용자 트래픽을 송수신하지 못하도록
한다는 의미이다. 그러나 BPDU들은 여전히 포트에 의해 수신된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Root Port와 Designated Port선정
1단계
2단계
3단계
4단계
보다 낮은
보다 낮은
보다 낮은
보다 낮은
Root BID
Path Cost
Sender BID
Port ID
100baseT
Port 0
Switch X
Default priority 32768
MAC 0c0011111111
Designated port (F)
Root port (F)
Port 0
Switch Y
Default priority 32768
MAC 0c0022222222
Root bridge
Port 1
Port 1
Designated port (F)
x
Nondesignated port (B)
100baseT
Tie Breaker :스위치의 Port ID
•
•
•
루트 브리지(Root Bridge)의 모든 포트는 지정 포트(Designated Port)이다.
각 스위치에서 루트 포트(Root Port)는 루트 브리지(Root Bridge)에 이르는
Path Cost , 연결 되어 있는 스위치의 Bridge ID, 스위치의 Port ID(Port
Priority, Port 번호) 에 의해서 결정된다.
각 세그먼트에서 지정 포트(Designated Port)는 루트 포트(Root Port)의 경
우와 동일하게 Path Cost , 연결되어있는 스위치의 Bridge ID, Port ID(Port
Priority, Port 번호)에 의해서 결정된다. Designated Port는 세그먼트별로 하
나만 가능하다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Bridge Protocol Data Unit(BPDU)
Bytes
Field
2
Protocol ID
1
Version
1
Message Type
1
Flags
8
Root ID
4
Cost of Path
8
Bridge ID
2
Port ID
2
Message Age
2
Maximum Time
2
Hello Time
2
Forward Delay
•
•
•
•
•
•
•
BPDU는 2초마다 보내진다.
Root Bridge를 선출한다.
Loop의 발생여부를 판정한다.
Loop 방지를 위해 Blocking한다.
네트워크 변화를 알린다.
Spanning Tree의 상태를 모니터링한다.
802.2 SAP사용 (SAP Address = 0x42)
•
Switch는 시작 시 자신을 root bridge로
간주하여 자신의 bridge id를 root id로
설정한다. Switch 상호간에 BPDU를 교
환하는데, 다른 스위치로부터 받은
BPDU에서 자신의 것보다 낮은 Root ID
를 발견하면 자신이 발생시키는 BPDU
의 Root ID를 낮은 Root ID로 바꾸어
Advertise한다.
스위치간에 이러한 BDDU를 교환하여
Root Bridge를 선출한다.
Root Bridge Selection
Bytes
Field
2
Protocol ID
1
Version
1
Message Type
1
Flags
8
Root ID
4
Cost of Path
8
Bridge ID
2
Port ID
2
Message Age
2
Maximum Time
2
Hello Time
2
Forward Delay
•
When First Booted: Bridge ID = Root ID
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Root Association
Bytes
Field
2
Protocol ID
1
Version
1
Message Type
1
Flags
8
Root ID
4
Cost of Path
8
Bridge ID
2
Port ID
2
Message Age
2
Maximum Time
2
Hello Time
2
Forward Delay
루트 브리지로 가는 최단
경로는 무엇인가?
Transmitting Switch’s
Path Cost
Bridge ID
Port ID(Port Priority + Port Number)
• Root Bridge가 선출되면 같은 서브넷의 모든 스위치는 Root Bridge로 부터의
BPDU를 수신한다. 한 스위치의 여러 개의 포트에서 Root Bridge로 부터의
BPDU를 받는다는 것은 Root Bridge까지의 중복된 링크가 있다는 것을 의미한다.
• 중복된 링크가 있는 경우, Root Bridge에 대한 Forwarding Port(Root Port)는
BPDU를 보내는 스위치의 Path Cost, Bridge ID, Port ID의 순으로 결정된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
BPDU Timer
Bytes
2
Protocol ID
1
Version
1
•
•
Field
Message Type
1
Flags
8
Root ID
4
Cost of Path
8
Bridge ID
2
Port ID
2
Message Age
2
Maximum Time
2
Hello Time
2
Forward Delay
Default Timer Values
Hello Time : 2 secs
Maximum Time(Max Age) : 20 secs
Forward Delay : 15 secs
Timer는 Root Bridge에서의
설정이 Non-Root Bridge로
전파된다.
Timer는 임시적으로 발생할 수 있는 Bridging Loop을 방지하는 데 사용된다.
Timer는 Link Failure 후에 Spanning Tree Convergence Time을 결정한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning-Tree Example(1)
1단계
2단계
3단계
4단계
보다 낮은
보다 낮은
보다 낮은
보다 낮은
Root BID
Path Cost
Sender BID
Port ID
Switch Z
Mac 0c0011110000
Default priority 32768
Port 0
100baseT
Port 0
Port 0
Switch Y
MAC 0c0022222222
Default priority 32768
Switch X
MAC 0c0011111111
Default priority 32768
Port 1
Port 1
100baseT
•
•
•
•
스위치 네트워크의 설정 상태를 근거로 아래에 제시된 질문에 답해 보자.
루트 브리지는 어느 것인가?
지정, 비지정, 루트 포트는 어느 것인가?
전달 포트와 차단 포트는 어느 것인가?
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning-Tree Example(2)
1단계
2단계
3단계
4단계
보다 낮은
보다 낮은
보다 낮은
보다 낮은
Root BID
Path Cost
Sender BID
Port ID
Switch Z
Mac 0c0011110000
Default priority 32768
Port 0
Designated port (F)
100baseT
Port 0
Root port (F)
Root port (F)
Port 0
Switch Y
MAC 0c0022222222
Default priority 32768
Switch X
MAC 0c0011111111
Default priority 32768
Port 1
Designated port (F)
Port 1
x
Nondesignated port (BLK)
100baseT
•
•
•
•
•
루트 브리지 : Z 스위치이다. 왜냐하면 브리지 ID가 가장 낮기 때문이다.
루트 포트 : X 스위치와 Y 스위치의 0번 포트다. 왜냐하면 각 스위치에서 각
루트로 경로 코스트가 가장 낮기 때문이다.
지정 포트 : Z 스위치의 0번포트다. 루트의 모든 포트는 지정 포트가 된다. X
스위치의 1번 포트는 지정포트다. 왜냐하면 루트 브리지에 대한 X 스위치와
Y 스위치의 경로 코스트가 동일하기 때문에 X 스위치에서 지정 포트가 선택
된다. X 스위치가 선택된 이유는 Y 스위치보다 브리지 ID가 낮기 때문이다.
차단 포트 : Y 스위치의 1번 포트다. 이는 해당 세그먼트에서 비지정 포트다.
전달 포트 : 모든 지정포트와 루트 포트는 전달 상태에 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스패닝 트리 경로 코스트
링크 속도
코스트(개정된 IEEE 명세)
코스트(이전의 IEEE 명세)
10Gbps
2
1
1Gbps
4
1
100Mbps
19
10
10Mbps
100
100
• IEEE 802.1D 명세는 2003년 1월 개정되었다. 1998년에 만들어진 이전 명세에서
코스트는 1000Mbps/대역폭으로 계산되었다. 그러나 새로운 명세에서는 1Gbps
와 10Gbps 사이에 이르는 더 높은 속도의 인터페이스에 적합하도록 코스트를
조정하였다.
☞ 참고
카탈리스트 1900 소프트웨어의 현재 버전은 스패닝 트리 코스트를 종전 방식으로
계산한다. 다른 모든 카탈리스트 스위치는 개정된 계산을 사용한다. 이것이 문제가
될 수 있다. 이전 방식의 계산을 사용하는 1900에서는 패스트이더넷 포트에 대해
10의 코스트를 가지고, 이에 반해 새로운 스위치가 19의 코스트를 가지기 때문이다.
이것은 해당 세그먼트에 대한 지정 포트로 1900이 선출됨을 의미한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning-Tree Recalculation(1)
x
100baseT
Designated port
Port 0
Root port (F)
MAXAGE
Port 0
Switch Y
MAC 0c0022222222
Default priority 32768
x
Switch X
MAC 0c0011111111
Root Bridge
Default priority 32768
BPDU
Port 1
Designated port
Port 1
x
Nondesignated port (BLK)
100baseT
Listening
Blocking
Max Age
•
•
•
Learning
Forward Delay
Forwarding
Forward Delay
전달 포트에 대한 브리지 장애나 링크 장애로 인해 토콜로지가 변경될 때 스
패닝 트리 프로토콜은 네트워크 토폴로지를 다시 조정해서 차단된 포트를 전
달 상태로 두어 연결이 이루어지도록 한다.
그림에서 보면 루트 브리지인 X 스위치에 장애가 발생하면 Y 스위치가 루트
브리지에서 잃어버린 BPDU를 찾는다. 스패닝 트리 타이머들 중에서 최대 수
명 타이머(Max Age timer)라는 것이 있다. 최대 수명 타이머가 끝나고 새로
운 BPDU가 네이버로부터 수신되지 못할 경우 스패닝 트리를 새로 다시 계산
하는 과정이 시작된다. 1번 포트는 리스닝 상태로 가고, 그 다음에 학습 상태
로 전이되고, 마지막으로 전달 상태가 된다.
네트워크가 수렴된 후에 Y 스위치가 루트 브리지가 된다. Y 스위치는 포트들
이 전달 상태로 전이되어 지정 포트가 되면 두 세그먼트 사이에서 트래픽을
전달한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Spanning-Tree Recalculation(2)
•
•
•
•
•
•
Blocking : Frame을 Forwarding하지 않는다. 스위치가 켜질 때의 Default
Mode이다.Blocking State에서도 BPDU는 수신된다(Blocking Port에서
BPDU를 송신하지는 않는다.)
Max Age : Bridge Failure, Link Failure 등 Topology에 변화가 생겨 스위치
가 루트브리지로부터 BPDU(Default 2초= Hello Time)를 수신하지 못하면
Max Age Timer(Default 20초) 동안 BPDU를 기다리는 시간을 갖는다. 이
기간 동안에도 BPDU를 수신하지 못하면 Listening Mode로 이행한다.
Listening : 모든 수신되는 BPDU를 체크하여 Spanning Tree
Recalculation을 하여,스위치의 Blocking Port가 Forwarding State가 되는
경우 Loop이 발생하지 않는지를 확인한다. Default로 15초의 시간이 할당된
다.(Forward Delay)
Learning : 향후의 Forwarding을 위해 Mac Address를 Learning하여 Filter
Table을 구성한다. Default로 15초의 시간이 소요된다. (Forward Delay)
Forwarding : Frame을 Forwarding한다.
Topology의 변화로 인하여 Blocking Mode에서 Forwarding State로 이행
하는데는 Default로 50초의 시간이 필요하며 이 기간 동안에는 프레임이
Forwarding 되지 못한다.
Blocking
Listening
Max Age
(20초)
Learning
Forward Delay
(15초)
Forwarding
Forward Delay
(15초)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치와 브리지
Bridging
•
•
•
•
•
•
•
•
•
Primarily software based
One spanning-tree instance per
bridge
Usually up to 16 ports per bridge
LAN Switching
• Primarily hardware based (ASIC)
• Many spanning-tree instances per
switch
• More ports on a switch
스위치는 multiport bridge( bridges with more ports)라 할 수 있다.
브리지가 소프트웨어 베이스라 한다면 스위치는 하드웨어 베이스
(ASIC :Application Specific Integrated Circuit)로 지연시간이 작다. (Low
Latency)
브리지는 하나의 Spanning Tree만을 가질 수 있으나 스위치는 여러 개의
Spanning Tree를 가질 수 있다.
브리지는 최대 16개의 포트를 가질 수 있으나 스위치는 수백 개의 포트를 가
질 수 있다.
스위치는 포트간 통신에 있어, Multiple Connection이 가능하나 브리지는
동시에 하나의 포트간 통신이 가능하다.
성능대비 가격이 저렴하다.(Low cost)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Duplex Overview
Switch
Hub
Half duplex (CSMA/CD)
•
일방향의 data flow이다.
•
높은 collison 가능성이 있
다.
•
Hub를 통한 연결의 경우이
다.
Full duplex
•
Point-to-point에서만 가
능하다.
•
dedicated switched port
에 연결된다.
•
양쪽에서의 full-duplex
지원이 요구된다.
•
Collision free이다.
•
Collision detect circuit이
disabled된다.
☞ 참고
성능 개선을 실제로 현실화하려면 전 이중 링크에 연결된 장비가 송신과 수신을 동
시에 해야만 한다. 엔드 장비에 있는 애플리케이션의 특성상 PC에서는 이것이
불가능하다. 전 이중이 가장 높은 효과를 내려면 설정 포트가 스위치, 라우터, 일부
서버에 연결되어야 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
카탈리스트 스위치의 기본 설정값 세팅
•
•
•
•
•
•
•
•
카탈리스트 스위치의 기본 설정값이 많은 매개 변수와 함께 사용자들의 요
구를 충족시키겠지만 특수한 네트워크 토폴로지를 충족시키기 위해 일부 기
본값을 변경시켜야 할 수도 있다. 기본값은 스위치 특징에 따라 달라진다.
카탈리스트 스위치의 기본 설정값을 몇 가지 살펴보자.
IP address : 0.0.0.0
CDP : Enabled(활성화)
10/100 port : Autonegotiate duplex mode(자동 협상 듀플렉스 모드)
Spanning Tree : Enabled(활성화)
Console password : None(없음)
스위치의 포트는 포트의 종류와 위치에 의해 식별된다. 카탈리스트 스위치
에는 세 종류의 이더넷 컨트롤러가 있으며, Ethernet(10Mbps),
FastEthernet(100Mbps), GigabitEthernet(1Gbps)가 있다. 포트 위치는 두
부분으로 지정되며, 슬롯/포트 형식으로 기록된다. 그러나 고정된 설정 스위
치의 경우 슬롯 번호는 항상 0이 된다.
다음은 카탈리스트 2950-12 스위치와 2950-24 스위치의 포트 정보를 나
타낸 것이다.
카탈리스트 2950-12
카탈리스트 2950-24
100Base-T port
총 12개(Fa0/1~Fa0/12)
총 24개(Fa0/1~Fa0/24)
100Mbps GBIC port
없음
G 0/1, G 0/2
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
카탈리스트 스위치에서 PORT의 명칭
•
•
•
Show running-config : Fa0/1을 interface Fast Ethernet 0/1로 표시한다.
Show spanning-tree : Fa0/1을 interface Fa0/1로 표시한다.
Show Vlan : Fa0/1을 port Fa0/1로 표시한다.
Switch_a# sh run
Switch_a# sh span
Building configuration...
Current configuration:
!
interface Ethernet 0/1
!
interface Ethernet 0/2
Port Ethernet 0/1 of VLAN1 is Forwarding
Port path cost 100, Port priority 128
Designated root has priority 32768, address
0090.8673.3340
Designated bridge has priority 32768, address
0090.8673.3340
Designated port is Ethernet 0/1, path cost 0
Timers: message age 20, forward delay 15, hold 1
Switch_a# show vlan-membership
Port VLAN
Membership Type
Port VLAN
Membership Type
---------------------------------------------------------------1
5
Static
13
1
Static
2
1
Static
14
1
Static
3
1
Static
15
1
Static
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치 인터페이스의 속도와 듀플렉스 모드 설정
•
기본적으로 스위치의 FastEthernet 포트는 속도와 듀플렉스에 대해
Autodetect모드다. 포트의 작동 방법을 정확하게 제어하고 싶으면 먼저 속도
를 설정해야 하며, 그 다음에 듀플렉스를 제어할 수 있다. Speed 인터페이스
설정 명령어를 사용하여 인터페이스의 속도를 변경할 수 있다. 이 명령어의
구문은 아래와 같으며, 이는 Fa0/1 인터페이스에서 실행되는 것으로 간주한
다.
Switch(config)#interface Fa0/1
Switch(config-if)#speed {10 | 100 | auto}
•
Speed 인터페이스 설정 명령어의 옵션은 아래와 같다.
- 10 : 포트가 10Mbps 모드에서 운용되도록 한다.
- 100 : 포트가 100Mbps 모드에서 운용되도록 한다.
- Auto : 포트가 802.1u 자동 협상을 사용하여 포트 속도를 선택하도록 한다.
•
Duplex 인터페이스 설정 명령어를 사용하여 인터페이스의 듀플렉스 모드를
변경할 수 있다. 이 명령어의 구문은 아래와 같으며, 이는 Fa0/1 인터페이스
에서 실행되는 것으로 간주한다.
Switch(config)#interface Fa0/1
Switch(config-if)#duplex {auto | full | half }
•
Duplex 인터페이스 설정 명령어의 옵션은 아래와 같다.
- auto : 듀플렉스 모드를 자동 협상으로 설정한다. 100Mbps TX 포트에 대해서 auto는 기본
옵션이다.
- full : 전이중 모드를 설정한다.
- half : 반이중 모드를 설정한다.
•
예를 들어, 한 스위치의 Fa0/1 인터페이스를 전이중 모드로 설정하고 싶으면
아래와 같이 하면 된다.
Switch#config terminal
Switch(config)#interface Fa0/1
Switch(config-if)#duplex full
-> config 모드로
-> 인터페이스 모드로
-> 듀플렉스를 전이중으로 설정
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
설정 값 확인
•
•
인터페이스 Fa0/1을 스피드는 100Mbps 설정하고 duplex는 전이중(fullduplex)로 설정하고 확인해보자.
Show interface Fa0/1 명령을 사용하여 설정 값을 확인한다.
switch#show interface Fa0/1
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Mac address 테이블 확인 및 clear
Switch_a# sh mac-address-table
-> 테이블 확인 명령어
Number of permanent addresses : 0
Number of restricted static addresses : 0
Number of dynamic addresses : 6
Address
Dest Interface
Type Source Interface List
----------------------------------------------------00E0.1E5D.AE2F Ethernet 0/2
Dynamic
All
00D0.588F.B604 FastEthernet 0/26
Dynamic
All
00E0.1E5D.AE2B FastEthernet 0/26
Dynamic
All
0090.273B.87A4 FastEthernet 0/26
Dynamic
All
Switch_a# clear mac-address-table
-> 테이블 삭제 명령어
Switch_a# sh mac-address-table
Number of permanent addresses : 0
Number of restricted static addresses : 0
Number of dynamic addresses : 0
Address
Dest Interface Type
Source Interface List
----------------------------------------------------Switch_a#
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
카탈리스트 스위치에서의 포트 보안 설정
•
스위치에서 옵션으로 사용할 수 있는 또 다른 MAC 기반 제한 기능으로 포트
보안이 있는데, 포트 보안의 장점은 아래와 같다.
- 한 인터페이스를 보호 포트로 설정하여, 정해진 장비들만이 특정 스위치 포트로 연결되도
록 한다.
- 어드레스 테이블에서 포트에 허용되는 MAC 어드레스의 최대 개수를 정의한다(범위 :
1~132, 기본값은 132)
•
어드레싱 보안을 활성화하려면 switchport port-security 인터페이스 설정
명령어를 사용해야 한다. 이 명령어의 구문은 아래와 같다.
Switch#conf t
Switch(config)#interface Fa0/3
Switch(config-if)#switchport port-security
•
•
이 명령어를 실행할 경우 스위치는 포트에 연결되어 있는 첫 번째 장비의 어
드레스를 학습하고 해당 어드레스를 보호한다. 스위치가 해당 인터페이스에
대해 여러 개의 어드레스를 보호하도록 만들고 싶으면 학습될 수 있는 어드
레스의 최대 개수를 늘려야 한다.
Switchport port-security maximum value 명령어에서 value에 1~132의 값
을 지정할 수 있다. 이는 포트에서 보호될 어드레스의 최대 개수를 규정한다.
이 명령어의 구문은 아래와 같다.
Switch#conf t
Switch(config)#interface Fa0/3
Switch(config-if)#switchport port-security maximum 4
•
•
•
어드레싱 보안 설정을 비활성하려면 no switchport port-security 명령어를
사용한다.
설정 검증
Show port-security
Switch#show port-security
Secure port
MaxsecureAddr
CurrentAddr
SecurityViolation
Security Ation
(count)
(count)
(count)
---------------------------------------------------------------------Fa0/3
4
1
0
Shutdown
---------------------------------------------------------------------Total Addresses in System : 1
Max Addresses limit in system : 1024
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치 모드 설정
•
TFTP서버에 configuration file을 보냄(copy) :
Switch_a#copy nvram tftp://host/dst_file
•
TFTP 서버에서 configuration file을 받아옴:
Switch_a#copy tftp://host/src_file nvram
Switch_a#copy nvram tftp://10.1.1.1/wgswd.cfg
Configuration upload is successfully completed
Switch_a#copy tftp://10.1.1.1/wgswd.cfg nvram
TFTP successfully downloaded configuration file
•
•
Clearing NVRAM
- System configuration을 factory default로 reset한다.
Switch_a#delete nvram
Vlan 정보 삭제
switch a#delete vlan.dat
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Vlan Overview
•
VLAN(Virtual LAN)
- Router를 사용하지 않고 Layer2 Switch를 사용하여 스위치 내에서 여러 개의 상이한 서브
넷을 만들 수 있다.
- Layer2 Switch를 사용하여 생성되는 서브넷을 VLAN(Virtual LAN)이라 하며, 같은 VLAN에
속하는 포트는 Broadcast를 Share하며(Broadcast Domain), 동일한 IP Subnet에 속한다.
- 기본적으로 VLAN 소속이 다른 노드간에는 통신이 불가하며 VLAN간에 통신을 가능하게
하려면 라우터 또는 라우팅 모듈을 사용하여야 한다.
•
VLAN의 효용
- Vlan을 활용할 경우 인터네트워크에서, 물리적 위치에 상관없이 사용자들을 하나의 공통된
브로드캐스트 도메인으로 묶을 수 있다. 곧 브로드캐스트를 제어(Broadcast Control)할 수
있다.
- 브로드 캐스트 사이에서의 통신이 3계층 자비에 의해 전송되며, 3계층 자비에서
ACL(Access Control List)와 같은 보안 특징을 구현할 수 있으므로 보안(Security)을 제공
한다.
- 라우터로 브로드캐스트도메인을 나누는 것에 비해 네트워크의 유연성 및 확장성(Flexibility
and Scalability)을 제공한다.
•
전형적인 VLAN 셋업의 특징
- 각각의 논리적인 VLAN은 별도의 물리적인 브리지와 동일하다.
- VLAN을 여러 대의 스위치로 확장할 수 있다.
- 트렁크 링크는 트래픽을 여러 VLAN으로 운반한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
기존의 네트워크 시스템 구성
Ip address 192.1.2.5
G/W : 192.1.2.1
Ip address 192.1.2.6
G/W : 192.1.2.1
SALES
192.1.2.0
Subnet
3rd floor
HR
192.1.3.0
Subnet
2nd floor
ENG
192.1.4.0
Subnet
1st floor
Ethernet0 : 192.1.2.1
Ethernet1 : 192.1.3.1
Ethernet2 : 192.1.4.1
• 라우터와 스위치를 사용하여 물리적인 위치에 따라 네트워크를 구성
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치를 이용하여 Vlan으로 구성
 Segmentation
 Flexibility
 Security
3rd floor
2nd floor
1st floor
SALES
HR
ENG
A VLAN = A broadcast domain = Logical network (subnet)
• 스위치를 사용하여 물리적인 위치와 관계없이 같은 VLAN에 할당된 사용자들은
공통된 브로드캐스트 도메인을 갖는다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VLAN 운영
Switch A
Switch B
Trunk
Fast Ethernet
Blue
VLAN
Black
VLAN
Green
VLAN
Blue
VLAN
Black
VLAN
Green
VLAN
■ = 파란 VLAN 트래픽
■ = 흑색 VLAN 트래픽
■ = 녹색 VLAN 트래픽
•
•
•
•
•
•
각각의 logical VLAN은 분리된 서브넷과 같다.
VLAN은 여러 개의 스위치를 거쳐 구성될 수 있다
Trunk는 다수(전부일 수도 있음)의 VLAN Traffic을 전달한다.
Trunk는 서로 다른 VLAN을 구별하기 위해서 특별한 encapsulation(ISL or
802.1q)을 사용한다.
Trunked link는 1-1005개의 VLAN을 연결할 수 있다.
Trunk port는 fast ethernet port에서만 가능하다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VLAN 멤버십 모드
Dynamic VLAN
Static VLAN
Trunk
Port e0/4
VLAN5
•
•
Port e0/9
VLAN10
Static VLAN(Port Based VLAN)
- Switch port별로 VLAN 소속을 설정한다.
- 설치 및 모니터링이 용이하다.
Dynamic VLAN(MAC Address Based VLAN)
- VLAN Management Policy Server(VMPS)를 사용해야 한다.
- VMPS는 MAC Address의 VLAN에 대한 mapping database server로 Cat
5000 switch나 별도의 서버를 사용한다.
- Cisco Switch는 IP Address Base의 Dynamic VLAN은 지원하지 않는다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
ISL(Inter Switch Links)
•
여러 개의 스위치에 걸쳐 VLAN을 구성할 수 있는데 이러한 스위치간 VLAN
을 지원하는 프로토콜이다. 즉 Trunk를 통하여 여러 개의 스위치에 걸쳐
VLAN을 구성할 때 사용되는 프로토콜이다.
•
ISL은 스위치와 스위치 간에, 스위치와 라우터간에, 스위치와 ISL을 지원하
는 서버 NIC간에 사용이 가능하다.
•
ISL은 시스코 장비간에만 사용 가능함으로(Cisco Proprietary) 다른 벤더의
장비와 연결하기 위해서는 802.1q 프로토콜을 사용해야 한다.
•
동일 스위치의 경우, 포트에 연결된 노드에서 만들어진 프레임이 스위치 포
트로 들어가면서 VLAN Tag 가 추가되어 VLAN 소속이 같은 포트로만 프레
임이 전달된다.
•
스위치간에는, 프레임은 트렁크 포트에서 VLAN Tag가 제거되고, 26 Byte의
ISL Header와 4 Byte의 FCS가 원래의 프레임에 추가되어 트렁크를 통과한
후 ISL Header와 FCS가 다시 제거되고 해당 VLAN Tag가 첨부되어 스위치
의 각 포트에 전달된다.
•
ISL 태깅(tagging)
- ISL trunk는 여러 스위치에 걸친 VLAN을 가능케 한다.
스위치 내부에서는 VLAN Tag가
붙어 있음
프레임이 스위치로 들어갈 때
VLAN Tag를 붙여서 들어감
스위치에서 Trunk port로 나갈때
VLAN Tag를 때고 ISL Tag를
붙여서 나감
스위치에서 일반 VLAN port로
나갈 때 VLAN Tag를 때고 일반
프레임으로 나감
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
ISL(Inter Switch Links)
•
ISL Encapsulation
ISL Header
26 bytes
DA
Type
User
CRC
4 bytes
Encapsulated Ethernet frame
SA
LEN
AAAA03
HSA
VLAN
BPDU
INDEX
RES
- ISL trunk port는 프레임을 그 포트로 보내기 전에 26byte의 header와 4byte의 CRC를 붙
여 보내게 된다.
- Catalyst1900스위치는 각각 Spanning Tree를 지원하는 VLAN을 64개까지 지원한다.
- VLAN field가 10bit이기 때문에 1024개의 VLAN을 만들고, 보낼 수는 있지만 64개 이상부
터는 SPT를 지원하지 않으므로 Bridge loops을 유발시킬 수 있다.
•
프레임 헤더 설명
- DA : 40비트의 멀티캐스트 수신지 어드레스
- 유형(type) : 캡슐화된 프레임의 유형을 나타냄. 길이는 4비트. 이더넷은 0000, 토큰링은
0001, FDDI는 0010, ATM은 0011이다.
- 사용자(user) : 유형 필드 확장자로 사용되거나 이더넷 우선순위를 정의하는 4비트짜리 서
술자. 우선순위가 가장 낮으면 0, 가장 높으면 3이되며, 이진 값이 들어간다.
- SA : 송신하는 카탈리스트 스위치의 송신지 MAC 어드레스로, 길이는 48비트이다.
- LEN : 프레임에서 DA, 유형, 사용자, SA, LEN, CRC를 뺀 길이를 나타내며, 16비트이다.
- AAAA03 : 표준 SNAP 802.2 LLC 헤더
- HAS : SA의 처음 3바이트(제조업체의 ID나 조직의 고유ID)
- VLAN : 15비트의 VLAN ID, 1024 VLAN에 대해서 하위 10비트만이 사용된다.
- BPDU : 프레임의 스패닝 트리 BPDU 여부를 나타내는 1비트짜리 서술자, 캡슐화된 프레
임이 CDP(cisco discovery protocol) 프레임일 경우에도 설정된다.
- INDEX ; 송신 포트 ID를 나타내는 16비트 서술자. 진단용으로 사용된다.
- RES : 토큰링과 FDDI(Fiber Distributed Data Interface) 프레임 FC(Frame Check) 필드와
같은 추가 정보에 사용되는 16비트짜리의 예약 필드
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Trunk Port와 연결
•
여러 개의 VLAN에 연결된 서버
- 서버에 ISL 프로토콜을 지원하는 NIC(Fast Ethernet Card)를 장착하여 서버를 여러 개의
VLAN에 연결할 수 있다. (스위치 포트와 ISL NIC를 Trunking 한다.) 이 경우 VLAN을 통해
서브넷으로 노드들을 분할하여 Security를 제공하면서 모든 서브넷에서 서버에 Access할
수 있다.
•
Routing Between VLANs(Cisco의 경우)
- 2600 series router : ISL routing을 지원하는 Fast Ethernet Port와 Switch Port를 Trunk
로 연결한다
- 5000 series switch : Route switch module (RSM)을 스위치에 장착하면 1005개 까지
의 VLAN을 연결할 수 있다
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VLAN Trunking Protocol
•
VTP개요
- 스위치간의 Trunk Link를 통하여 VLAN 설정 정보를 하나 또는 그 이상의 스위치에서 통
합적으로 관리하기 위한 프로토콜로 VLAN이 2개 이상인 경우에 사용될 수 있다.
- 각각의 스위치별로 VLAN을 구성하는 경우의 불편과 오류를 제거할 수 있다.
•
VTP 이점
- 네트워크에 있는 모든 스위치의 VLAN의 정보를 동일하게 유지할 수 있다.
- 스위치의 VLAN에 관한 정확한 모니터링과 추적을 할 수 있다.
- 모든 스위치에 추가된 VLAN의 정보를 Dynamic하게 알릴 수 있다.
- VLAN configuration information을 전달하는 messaging 이다.
- VTP 관리 도메인을 통해 VLAN configuration consistency를 보장한다.
- VTP는 trunk port를 사용하여 메시지를 전달한다.
- Fast Ethernet, FDDI, ATM등과 같이 사용될 수 있다.
VTP Domain “ICND”
3. 최신의 VLAN정보로 동기화
2. 광고
1.“새로운 VLAN 추가”
• 새로운 VLAN이 1개 추가된다. 이 시점에서 VTP는 관리자의 작업을 더 쉽게 한다.
• VTP 광고가 VTP 도메인의 다른 스위치들로 전송된다.
• 새로운 VLAN이 다른 스위치 설정에 추가된다. 결과적으로 VLAN 설정의 일관성이
확보된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VTP 모드
SERVER
CLIENT
•
•
•
•
Transparent
VTP의 기본 모드는 서버모드이다.
서버모드 : VLAN과 다른 설정 매개변수를 생성, 수정, 삭제할 수 있다. 서버
모드에서 VLAN 설정은 카탈리스트 NVRAM에 저장된다. VTP 서버에서
VLAN 설정을 수정할 때 변경 내용은 해당 VTP 도메인의 모든 스위치로 전파
된다. VTP 메시지는 ISL과 같은 모든 트렁크 연결 외부로 송신된다.
클라이언트 모드 : VLAN을 생성하고, 변경하고, 삭제할 수 없다. 그러나 클라
이언트 모드의 스위치도 VTP 메시지를 전송할 수는 있다.
투명모드 : VTP 광고를 생성하거나 관리 도메인에 있는 다른 스위치들로부터
수신한 정보로 VLAN 설정을 동기화하지 못한다. 투명 모드의 스위치는 동일
한 관리 도메인의 일부인 다른 스위치들로부터 수신한 VTP 광고를 전달한다.
VTP 투명 모드로 설정된 스위치는 VLAN을 생성하고, 삭제하고, 수정할 수
있다. 그러나 변경 내용을 해당 도메인의 다른 스위치로 송신하지는 못한다.
이는 지역 스위치에만 영향을 미친다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VTP의 작동
Server Mode
Frowarding
Transparent Mode
Advert-Request
Client Mode
•
•
Client Mode
Summary-Advert
/ Subset-Advert
VTP server는 VLAN 구성이 변경되거나, 변경이 없더라도 매 5분 간격으로
summary advertisement를 보낸다.
VTP client는 advert-request VTP advertisement를 사용하여 VLAN
information request를 한다.server는 세부정보를 보유한 subset
advertisement 로 응답한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VTP Advertisements
•
Three types of VTP messages
- VTP advertisements는multicast frames 형태로 보낸다.
- Advertisement request : VTP Client가 VLAN information을 요청한다.VTP server는
subset advertisement로 응답한다.
- Summary advertisement : 매 5분 간격 및 변경이 있을 때마다 VLAN 1을 통해서 전파된
다.
- Subset advertisements : VLAN에 대한 세부정보를 보유한다.
•
Advertisement가 보유하는 Information
- Management domain name: 다른 domain name으로부터의 Advertisement는 무시된다.
- Configuration revision number: 높은 revision number는 최근의 configuration임을 의미
한다..
- MD5 Digest : VTP Domain에 Password가 설정된 경우, MD5로 Encryption된 키로써 이
키가 맞지 않으면 Update는 무시된다.
- Updater identity : VTP summary advertisement를 보내는 스위치의 ID(MAC Address)이
다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VTP Pruning
B
Switch 4
Flooded
traffic is
pruned
Switch 2
Green
VLAN
Switch 5
Port 1
•
•
•
A
Switch 1의 Port 1 , Switch 4의 port 2에 green VLAN이 할당되어 있다.
Switch 1의 Port1에 연결된 호스트에서 broadcast가 발생되면 모든 Trunk
Link를 통하여 전파되므로 Switches 3, 5, 6은 green VLAN에 속한 포트가
없음에도 불구하고 Broadcast Traffic이 Flooding된다.
VTP pruning이 enabled되어 있으면 , Switch 1으로부터의 broadcast
traffic 은 green VLAN traffic이 Switch 2의 port 5 와 Switch 4의 port 4 에
서 Pruning되어 Switches 3, 5, 6 으로 Flooding되지 않는다(VTP server에
서 enable 시키면 모두 전파됨) .
이후 switch-6 스위치에 green VLAN에 속하는 포트가 할당되면 switch-4,
switch-5, switch-6 스위치에서 Green Vlan Pruning이 자동으로 Disabled
된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
VLAN Configuration Guide Line
•
•
•
•
•
•
각각의 VLAN은 별개의 서브넷으로 구성되어야 하며, VLAN은 1-1005개까지
지원될 수 있으며, Maximum은 스위치별로 상이하다. Catalyst Switch 1900
의 경우 64개의 VLAN을 지원한다. (Cat1900의 경우 Spanning Tree를 64개
만 지원하므로 VLAN의 구성이 64개로 제한된다.)
VLAN1은 Factory Default VLAN으로, Pruning 될 수 없으며, CDP, VTP
Advertisement는 VLAN1을 통해서 보내진다. Switch의 Management IP
Address도 VLAN1에 소속되어야 한다.(Switch 5000의 경우, Management
IP Address를 다른 VLAN으로 설정하는 것도 가능하다.)
VLAN Membership은 각각의 스위치에서 포트별로 수동 할당해야 하며
(Static Vlan의 경우) 하나의 포트는 하나의 VLAN에만 소속될 수 있다.
VTP를 사용하는 경우, VLAN을 생성,추가,삭제하기 위해서는 스위치가
Server 모드 또는 Transparent 모드여야 한다. Client 모드에서는 불가하다.
Transparent 모드인 경우는 그 스위치 에만 국한된 VLAN을 생성할 수 있다.
VTP Domain에 스위치를 추가하는 경우 Client Mode로 설정하여 추가해야
한다. Server 모드인 경우 추가하는 스위치에 이미 설정된 VLAN 정보가 전파
된다. delete vtp 명령으로 vtp 설정을 제거한 후에 추가하는 것도 한 방법이
다.
VTP Domain 이름과 VTP Domain Password는 VTP Domain에 속하는 모든
스위치에서 동일해야 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
실습
•
•
•
•
•
•
•
•
•
다음과 같이 스위치가 연결되어 있다. 스위치 1과 스위치 2는 Fa0/1을 트렁
크 포트로 사용하고 있다.
다음과 같이 구성해보자.
Vlan 10, 20, 40, 100, 200을 생성하고 각 Vlan마다 이름을 설정한다.
Fa0/2은 Vlan 10번에 할당하고, Fa0/3은 Vlan 20번에, Fa0/4는 Vlan 40번
에, Fa0/5는 Vlan 100번에, Fa0/6은 Vlan 200번에 할당하고 show vlan 명
령을 이용하여 제대로 할당이 되었는지 확인한다.
Fa0/1은 트렁크 모드로 설정하고 스위치 1과 스위치 2가 통신이 될 수 있도
록 한다.
스위치 관리를 위한 IP address를 스위치 1번에는 Vlan 10에 192.168.1.4로
할당하고 디폴트 게이트 웨이 주소는 192.168.1.1로 할당한다.
스위치 관리를 위한 IP address를 스위치 2번에는 Vlan 10에 192.168.1.5로
할당하고 디폴트 게이트웨이 주소는 192.168.1.1로 할당한다.
구성이 제대로 되었다면 두 스위치간에 핑 명령을 이용하여 테스트 해볼 것.
Vtp 명령을 이용하여 vtp mode를 client로 변경한 후 vlan을 생성해 볼 것.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치 1번 구성
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Vlan이 설정되어 있는지 확인
Switch#Show flash -> vlan이 설정되어 있다면 vlan.dat란 파일이 보인다.
Vlan 설정이 되어있지 않다면 vlan을 생성한다.
Switch#vlan database -> vlan을 생성하는 명령어
Switch(vlan)# -> 모드 확인
Switch(vlan)#vlan 10 name sales -> vlan 10을 생성하고 이름을 sales로
설정.
Switch(vlan)#vlan 20 name account -> vlan 20을 생성하고 이름을
account로 설정.
Switch(vlan)#exit -> vlan모드 빠져나오기 (ctrl+z를 눌러도 동일함)
Fastethernet 0/3번을 억세스 모드로 vlan 10번에 할당하려면 다음과 같이
수행하면 된다.
Switch#conf t -> config모드로
Switch(config)#interface Fa0/3 -> 인터페이스 모드로
Switch(config-if)#switchport acces vlan 10-> 억세스 모드로 포트를 설정
하고 Vlan 10에 포트를 할당.
Switch(config-if)#ctrl+z -> 인터페이스 모드 빠져나오기
switch#show vlan -> vlan정보를 보여준다.
Switch#conf t -> 트렁크 포트를 설정하기 위해 config모드로 들어간다.
Switch(config)#interface Fa0/1 -> 인터페이스 모드로
Switch(config-if)#switchport mode trunk -> 포트를 트렁크 모드로 설정
Switch(config-if)#switchport trunk allowed vlan 10,20,40,100,200 -> 트
렁크를 통해 vlan간 통신을 허용할 vlan들을 적어준다.
Switch(config-if)#ctrl+z
Switch#show interface trunk -> 트렁크 설정이 되었는지 확인
Switch#conf t
Switch(config)#interface vlan 10 -> 라우터와는 달리 스위치는 vlan 인터
페이스에 ip address를 할당한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치 1번 구성
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Switch(config-if)#ip address 192.168.1.4 255.255.255.0 -> ip 주소 추가
Switch(config-if)#no shutdown -> 인터페이스를 활성화 시켜야 한다. 기
본은 shutdown되어 있다.
Switch(config-if)#exit
Switch(config)#ip default-gateway 192.168.1.1 -> 디폴트 게이트웨이 값
을 설정
Switch(config)#exit
설정을 했다면 상대방과 핑 테스트를 해볼 것.
핑이 제대로 나간다면 설정이 제대로 된 것이다.
Vtp mode를 변경해보자.
Switch#conf t
Switch(config)#vtp mode client -> vtp 모드를 client모드로 설정
Switch(config)#exit
Switch#show vtp status -> vtp 상태 정보를 보고 모드가 client로 변경이
되었는지 살펴봐라. 변경이 되었다면 vlan을 생성해보자.
Switch#vlan database -> vlan을 생성하기 위한 모드로 진입
Switch(vlan)#vlan 50 name test
switch(vlan)#exit
Switch#show vlan -> vlan이 생성되었는지 확인
Vtp client모드에서는 vlan을 생성할 수 없다. 앞 페이지를 참조할 것.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스위치와 허브
•
허브란?
- 허브를 사전에서 찾아보면 ‘중심축’이라는 뜻을 가지고 있다. 자전거 바퀴를 연상해보면
바퀴살들이 중심축을 향하여 모여 있다. 네트워크에서의 허브도 같은 기능을 한다. 중심축
에 놓여 여러 컴퓨터들을 연결해주는 역할을 한다.
- 허브의 역할은 UTP 랜 케이블을 이용하여 가까운 거리에 있는 컴퓨터들을 연결시켜 주는
네트워크 장비이다. 허브는 이와 더불어 감쇠된 신호를 증폭하여 주는 역할도 겸하고 있다.
일반적인 UTP 케이블의 경우 케이블 길이가 100M를 넘게 되면 신호의 감쇠현상이 발생한
다. 두 컴퓨터 사이의 거리가 100M를 넘게 된 경우 중간지점에 허브를 하나 설치하게 되면
네트워크 연결이 가능하다.
<인접한 컴퓨터들은 허브를 통해 서로 연결된다.>
- 통상적으로 허브는 더미 허브와 스위치 허브로 나누어진다. 다음에 설명되는 내용은 더미
허브(일반적으로 허브라 칭한다)와 스위치허브(스위치라고도 한다.)의 차이점에 대한 설명
이다.
•
허브의 작동원리
- 허브와 스위치의 가장 큰 차이점은 각각의 포트에 연결된 컴퓨터나 네트워크 장비의 MAC
주소를 알고 있느냐 없느냐에 있다. 허브의 경우에는 단순히 중계기 역할을 한다. 허브에 4
대의 컴퓨터가 연결되어 있고 컴퓨터 B가 컴퓨터 C로 신호를 보내면 그 신호는 허브에 연
결된 모든 컴퓨터로 전송된다. 즉 모든 신호를 브로드캐스트한다는 말이다.
<허브는 들어오는 신호의 송신지와 수신지를 구별하지 못해 허브를 통해 연결된 모든 컴퓨
터에게 신호를 전달한다.>
- 만약 10M의 대역폭을 가진 허브에 컴퓨터가 5대 연결되어 있다면 각 포트에 할당되는 대
역폭은 10/5, 즉 2M이다.
•
허브의 내부 구조
- 허브와 스위치를 고속도로에 비교할 경우 허브는 왕복 1차선도로라고 생각하면 된다. 동시
에 같은 길에 자동차가 진입하면 사고가 난다. 당연히 허브에서도 동시에 신호가 오가면 충
돌이 생기게 된다. 따라서 한쪽 신호가 지나간 후에 다른 포트에서 신호를 보내게 되어 있
다.
•
스위치의 작동 원리
- 하지만 스위치의 경우는 다르다. 스위치에는 내부에 메모리를 가지고 있어 각 포트에 연결
되어 있는 컴퓨터들의 MAC 주소들이 여기에 기록되어 있다. 즉, 컴퓨터 A가 D로 신호를
보내면 그 신호는 컴퓨터 D로만 전달되고 다른 컴퓨터에는 신호를 보내지 않는다.
<스위치는 각 포트에 연결된 컴퓨터들의 MAC 주소를 자신의 메모리에 기억하여 둔다. 즉,
송신지와 수신지의 주소를 구분하여 해당 목적지로만 신호를 전달한다.>
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅
• IP Routing 프로토콜의 개념
•Access List를 사용한 기본적인 IP Traffic의 관리
•Router 실습
라우팅
라우팅이란?
라우팅(즉 경로배정)은 패킷을 발신지부터 목적지까지 어떠한 경로를
통해서 보낼 것인가를 결정하는 기본적인 과정이다. 라우팅은 발신지
부터 목적지까지 회선 설정이 필요한 전화망뿐만 아니라 도착하는 패
킷에 대해 전송할 링크를 결정해야 하는 패킷망에서도 사용된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 Overview
•
•
•
•
경로설정은 Layer3(Network Layer)에서 일어난다.
경로설정 기능(Routing Protocol 또는 Static Route)을 통하여 목적지에 대
한 가능한 경로들을 평가하여 최적의 경로를 찾아내고, traffic를 routing 시
켜주는 장비가 Router이다.
네트워크 경로를 평가하기 위해서 라우터는 네트워크 구성 정보가 필요한데,
네트워크 관리자에 의해서 설정된 정보(Static Route), 또는 라우팅 프로토콜
에 의해서 수집된 정보를 사용한다.
라우터가 라우팅을 하기 위해서는 몇 가지 주요정보가 필요하다.
- 목적지 주소 (Destination Address)
- 목적지 주소를 얻는 Source (Information Source, Exit Interface, other routers)
- 가능한 경로 (Possible Routes, 1개이상 가능)
- 최적의 경로 (Best Route)
- 라우팅 정보의 유지및 이상 유/무 check.
(Routing Information Maintenance /Verification 방법)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
정적 경로 vs 동적 경로
정적 경로
네트워크 관리자가 수동으로 만들 수 있다.
•
관리자가 경로를 수동으로 수립할 때 라우터가 학습한 경로다. 링크장애(link
failure)와 같이 인터네트워크 포톨로지를 업데이트해야 하는 상황이 발생할
때마다 관리자는 정적 경로 엔트리를 수동으로 업데이트 해야 한다.
동적 경로
네트워크에서 실행되는 동적 프로세스들을 통하여 라우팅 테이블 작성에 필요한
정보를 모을 수 있다.
•
관리자가 라우팅 프로토콜을 설정한 후에 특정 라우터가 다른 라우터들로부
터 학습한 경로다. 정적 경로와 달리 네트워크 관리자가 동적 라우팅을 활성
화하자마자 경로 정보가 해당 라우터로부터 전파되고, 또한 다른 라우터들로
부터도 자동 학습된다. 인터네트워크 내의 다른 라우터들로부터 새로운 토폴
로지 정보가 수신될 때마다 일상적인 프로세스에 의해 이 라우팅 정보가 업
데이트 된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
정적 경로
Stub Network
130.16.1.0
Network
•
•
•
•
SO
A
130.10.1.1
130.10.1.2
B
B
Static Route는 기본적으로 양방향에서 설정 되어야 한다.
라우팅 업데이트가 일어나지 않기 때문에 대역폭을 절약할 수 있다.
Static Route는 주로 Stub Network과 일반 Network의 연결에서 많이 사용된
다.
Stub 네트워크는 단일 경로에 의해 접근되는 네트워크로서 이를 리프 노드
(leaf node)라고도 한다. 스텁 네트워크로 가고 오는 길이 하나밖에 없기 때
문에 스텁 네트워크에서 흔히 정적 경로가 사용된다.
☞ 참고
정적 경로는 라우터에 직접 연결되지 않은 원격 네트워크와의 연결을 위해 설정
된다. 엔드-투-엔드 연결에서 라우팅 프로토콜을 사용하지 않은 경우에 정
적 경로를, 즉 디폴트 경로를 양방향에서 설정해야 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
정적 경로 설정
Router#conf t
Router(config)# ip route network [mask] {address | interface}
[distance] [permanent]
•
•
•
•
•
•
•
각 매개변수의 용도를 살펴보자
Network : 수신지 네트워크나 서브넷이다.
Mask : 서브넷 마스크다.
Address : 다음 홉(next hop)라우터의 ip address다.
Interface : 수신지 네트워크에 도달하기 위하여 사용할 인터페이스의 이름이
다.
Distance : 관리거리를 정의하는 옵션 매개변수다.
Permanent : 인터페이스가 셧다운 되더라도 경로가 제거되지 않도록 지정하
는 옵션 매개변수다.
Stub Network
130.16.1.0
Network
•
SO
A
130.10.1.1
130.10.1.2
B
B
A 라우터의 설정 예
Router#conf t
Router(config)#ip route 130.16.1.0 255.255.255.0 130.10.1.2
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
디폴트 경로 설정
Stub Network
130.16.1.0
Network
SO
A
130.10.1.1
130.10.1.2
B
B
Router#conf t
Router(config)#ip route 0.0.0.0 0.0.0.0 130.10.1.1
•
디폴트 경로(default route)는 특수한 유형의 정적 경로로서 두 가지 경우에
사용된다. 첫째는 송신지에서 수신지로 가는 경로가 알려지지 않은 상황일
때 사용되고, 둘째는 가능한 모든 경로에 관한 정보를 지정하기에 라우팅 테
이블의 공간이 충분치 않을 경우에 사용된다. 이 디폴트 경로를 gateway of
last resort라고도 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Routing Protocol Overview
•
•
동적 라우팅은 라우팅 프로토콜을 기반으로 지식을 퍼뜨리거나 모은다. 네이
버 라우터들과 통신할 때 라우터는 라우팅 프로토콜이 정의한 규칙 집합을
사용한다. 즉 라우팅 프로토콜은 라우팅 경로(routing path)를 결정하고 라우
팅 테이블(routing table)을 관리한다.
경로가 결정되면 Routed Protocol(IP, IPX)은 라우팅될 수 있다. 라우팅 프로
토콜은 라우터 간에 라우팅 테이블 정보를 교환하여 최적의 경로 테이블 구
성 및 업데이트를 가능케 하는 프로토콜이다.
10.120.2.0
E0
Network
Protocol
Connected
RIP
IGRP
•
•
172.16.1.0
S0
Destination
Network
10.120.2.0
172.16.1.0
172.17.3.0
Exit Interface
172.17.3.0
E0
S0
S1
라우티드 프로토콜 : 말 그대로 라우팅을 당하는 즉 라우터가 라우팅을 해주
는 고객을 말한다.
Routed Protocol: IP, IPX, AppleTalk
Routing protocol: RIP, IGRP..
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Routing Protocol 구분
•
범위에 따른 분류
- IGP : RIP, IGRP, OSPF, EIGRP, IS-IS
- EGP : EGP, BGP
•
사용하는 Algorithm에 따른 분류
- Distance Vector : RIP, IGRP, EIGRP(Hybird)
- Link state : OSPF, IS-IS
•
Subnet 정보 전달 여부에 따른 분류
- Classful : RIP v1, IGRP
- Classless : RIP v2, EIGRP, OSPF, IS-IS, BGP
•
지원하는 Route에 따른 분류
- Single Path(equal load balancing) : RIP, OSPF
- Multi Path(unequal load balancing) : IGRP, EIGRP
•
IGP와 EGP의 차이점
EGPs: BGP
IGPs: RIP, IGRP,EIGRP,OSPF
Autonomous System 200
Autonomous System 600
• An autonomous system(AS) 은 동일한 관리도메인 하에 있는 Network의
모음이다.
• Interior Gateway protocols은 하나의 AS내에서 사용되어지는 Protocol이다.
• Exterior Gateway protocols은 서로 다른 AS들간의 Communication을 위한
Protocol이다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
관리거리(Administrative Distance)
네트워크 E를 찾아 가는
IGRP
Administrative
Distance=100
경로가 두개이상의 Routing
Protocol(static포함)를
통해서 알게된 경우 과연
어떤 경로가 최적의 경로
Router A
일까?
Router B
RIP
Administrative
Distance=120
E
Router C
•
•
•
•
Router D
여러 개의 라우팅 송신지에서 공통 라우팅 정보를 보내올 경우 관리 거리 값
(Administrative distance value)을 사용하여 각 라우팅 송신지의 가치나 신
뢰성을 등급으로 매길 수 있다.
Cisco IOS software는 이 관리 거리 값을 통하여 라우팅 정보 송신지들을 분
간할 수 있다.
IOS는 각 네트워크로부터 필요한 정보를 학습하여 관리 거리가 가장 낮은 라
우팅 송신지로부터 온 경로를 선택한다.
관리 거리 값은 0에서 255 사이의 정수다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Default Administrative Distance
•
•
•
Administrative Distance 값은 라우팅 프로토콜의 우선순위를 나타낸다.
다음은 일부 라우팅 정보 송신지들의 디플트 관리 거리를 요약한 것이다.
디폴트 관리 거리 값
경로 송신지
디폴트 거리
연결된 인터페이스
0
정적 경로 어드레스
1
내부 EIGRP
90
IGRP
100
OSPF
110
IS-IS
115
RIP
120
외부 EIGRP
170
알려지지 않은/신뢰할 수 없는
255(트래픽 전달에 사용되지 않을 것임)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Routing Protocol의 종류
B
A
C
D
•
•
•
Distance Vector
- 목적지에 대한 경로를 방향(vector)과 거리(distance)를 통해서 결정하는
프로토콜
Link State
- SPF (Shortest Path First) 기법을 이용하여 각각의 라우터가 별도의
Topology DB (네트워크 구성)을 만들고 DB중 최상의 경로를 라우팅 테이블
에 저장하여 패킷에 대한 경로를 결정하는 라우팅 프로토콜
Hybrid Routing
- Distance vector와 Link state의 장점을 모아서 만든 프로토콜
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
거리벡터 라우팅 프로토콜 Overview
B
A
C
Distance—거리
Vector—방향
D
D
Routing
Table
•
•
•
•
•
C
Routing
Table
B
A
Routing
Table
Routing
Table
목적지 네트워크가 어느 방향(Vector), 얼마간의 거리(Distance)에 있는 지
를 기준으로 라우팅 테이블을 구성한다.
목적지에 대한 정보 및 목적지를 찾아가는 경로에 대한 우선 순위를 인접한
라우터에 의존하는 라우팅 프로토콜(routing by rumor)
라우터 간에 각자가 보유한 라우팅 테이블을 주기적으로 업데이트 해서 전
달된 라우팅 정보가 라우터를 통과할 때마다 distance (거리, Hop)값이 더해
지는 라우팅 프로토콜이다.
Full Update이다. 즉, 전체 라우팅 테이블을 update한다.
인접 라우터의 라우팅 테이블을 Update 받은 라우터는 자체 보유한 라우팅
테이블과 비교하여 Better Route만을 Update한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
거리벡터 라우팅 프로토콜의 동작(1)
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
•
•
•
30.3.0.0
S0
S1
B
Routing Table
30.4.0.0
S0
C
E0
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.0
S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
E0
0
직접 연결되어 있는 각 네트워크에 대한 인터페이스의 거리가 0임을 알 수
있다.
거리 벡터 네트워크 발견 과정이 진행되면서 라우터들은 각 네이버로부터 수
신되어 누적된 메트릭을 기반으로 직접 연결되어 있지 않은 수신지 네트워크
들에 대한 최상의 경로를 찾는다.
예를 들어, A라우터는 B라우터로부터 수신한 정보를 토대로 다른 네트워크
들에 관한 것을 학습한다. 라우팅 테이블에 있는 다른 네트워크 엔트리들 각
각은 누적된 거리 벡터를 가지고 있어서 해당 네트워크가 특정 방향으로 얼
마나 멀리 떨어져 있는지를 보여준다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
거리벡터 라우팅 프로토콜의 동작(2)
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
30.3.0.0
S0
S1
B
Routing Table
30.4.0.0
S0
C
E0
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.0
S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
E0
0
30.3.0.0
S0
30.1.0.0 S0
1
30.2.0.0
S0
1
S1
1
30.1.0.0
S0
2
30.4.0.0
S0
1
2
30.4.0.0
동적 경로 학습
•
•
•
거리벡터 라우팅 프로토콜은 다른 라우팅 알고리즘을 사용하여 최상의 경로
를 결정한다. 이 알고리즘은 네트워크를 지나가는 각 경로에 대해 메트릭 값
(metric vlaue)이라고 하는 숫자를 생성한다.
메트릭이 작으면 작을 수록 경로는 더 좋은 것이 된다.
라우터가 가장 공통적으로 사용하는 메트릭은 아래와 같다.
- 홉 카운트 : 패킷이 지나가는 라우터의 개수
- 코스트 : 일반적으로 대역폭, 비용, 다른 측정 항목을 기반으로 네트워크 관리자가 할당할
수 있는 임의의 값
- 대역폭 : 링크의 데이터 용량. 예를 들어, 일반적으로 64Kbps 전용선보다 10Mbps 이더넷
링크를 더 선호
- 지연 : 송신지에서 수신지로의 패킷 이동에 걸리는 시간
- 로드 : 라우터나 링크와 같은 네트워크 자원의 활동량
- 신뢰성 : 각 네트워크 링크이 비트 에러율
- MTU(maximum transmission unit) : 경로의 모든 링크에서 수락될 수 있는 프레임의 최대
길이. 단위는 옥텟.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
메트릭을 이용한 최상의 경로 선택
A
IGRP
RIP
Hop count
Bandwidth
56
Delay
Load
T1
Reliability
56
MTU
IPX
Ticks, hop count
1/18초
•
•
T1
B
A 호스트와 B 호스트 사이에 여러 개의 경로가 있음을 알 수 있다. 각 라우팅
프로토콜은 메트릭을 보고 이들 호스트 사이에서 최상의 경로를 선택할 수
있다. 각 라우팅 프로토콜은 다른 값을 사용하여 메트릭을 계산한다.
퀴즈
- RIP를 사용했을 때는 어느 경로를 통해 이동하는가?
- IGRP를 사용했을 때는 어느 경로를 통해 이동하는가?
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 루프
•
네트워크가 정상인 경우
30.1.0.0
30.2.0.0
E0
30.3.0.0
S0
A
B
S0
Routing Table
S1
30.4.0.0
S0
Routing Table
E0
C
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.0
S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
E0
0
30.3.0.0
S0
1
30.4.0.0
S1
1
30.2.0.0
S0
1
30.4.0.0
S0
2
30.1.0.0
S0
1
30.1.0.0
S0
2
•
30.4.0.0 링크가 다운된 경우
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
30.3.0.0
B
S0
S1
Routing Table
30.4.0.0
E0 X
C
S0
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.0
S0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
E0
Down
30.3.0.0
S0
1
30.4.0.0
S1
1
30.2.0.0
S0
1
30.4.0.0
S0
2
30.1.0.0
S0
1
30.1.0.0
S0
2
0
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 루프
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
•
30.3.0.0
S0
B
S1
Routing Table
30.4.0.0
S0
E0 X
C
Routing Table
30.1.0.0
E0
0
30.2.0.0 S0
0
30.3.0.0 S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
S0
2
30.3.0.0
S0
1
30.4.0.0
S1
1
30.2.0.0
S0
1
30.4.0.0
S0
2
30.1.0.0
S1
1
30.1.0.0
S0
2
라우터 C는 30.4.0.0네트워크로 갈 수 없음에도 불구하고 다른 라우터를 통
해서 갈 수 있을 것이라는 판단에 라우터 B에게 30.4.0.0으로 갈 수 있는 경
로를 요청한다. 느린 컨버젼스에 의해 라우터 B는 여전히 30.4.0.0으로 갈
수 있는 경로를 가지고 있다. 이 경우에 라우터 B는 라우터 C에게 잘못된 정
보를 업데이트 하게 되고 라우터 C는 라우터 B를 통해서 30.4.0.0으로 갈 수
있다고 생각을 하고 자신의 라우팅 테이블에 30.4.0.0에 대한 홉 카운트를 2
로 증가시킨다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 루프
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
•
•
30.3.0.0
S0
B
S1
Routing Table
30.4.0.0
S0
E0 X
C
Routing Table
30.1.0.0
E0
0
30.2.0.0 S0
0
30.3.0.0 S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
S0
2
30.3.0.0
S0
1
30.4.0.0
S1
3
30.2.0.0
S0
1
30.4.0.0
S0
4
30.1.0.0
S1
1
30.1.0.0
S0
2
B 라우터는 C 라우터로부터 새로운 업데이트를 수신하여 30.4.0.0 네트워크
에 대한 홉 카운트를 3으로 계산한다. A 라우터는 B라우터로부터 새로운 라
우팅 테이블을 수신하고, 30.4.0.0 네트워크에 대한 거리 벡터가 수정되었음
을 감지하고, 30.4.0.0에 대한 거리 벡터를 4로 다시 계산한다.
A, B, C 라우터가 30.4.0.0으로 가는 최상의 경로가 서로를 경유하는 것이라
고 결론 짓기 때문에 그림과 같이 30.4.0.0 네트워크로 향하는 패킷들은 세
라우터 사이에서 계속 왔다갔다한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 루프
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
•
•
•
30.3.0.0
S0
B
S1
Routing Table
30.4.0.0
S0
E0 X
C
Routing Table
30.1.0.0
E0
0
30.2.0.0 S0
0
30.3.0.0 S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
S0
4
30.3.0.0
S0
1
30.4.0.0
S1
5
30.2.0.0
S0
1
30.4.0.0
S0
6
30.1.0.0
S1
1
30.1.0.0
S0
2
그림에서 계속 볼 수 있듯이 30.4.0.0 네트워크에 관한 부적절한 업데이트로
인해 루프가 지속된다. 어떤 다른 프로세스로 인해 루핑이 멈추기 전까지 라
우터들은 서로를 부적절하게 업데이트 하면서 30.4.0.0 네트워크가 다운된
것으로 간주한다.
무한대 계산(count-to-infinity)이라고 하는 이 상황으로 인해 라우팅 프로토
콜은 메트릭을 계속 증가시키며 수신지 네트워크인 30.4.0.0이 다운되었다
는 기본적인 사실에도 불구하고 장비들 사이에서 패킷의 경로를 앞뒤로 계속
설정한다. 이와 같이 라우팅 프로토콜이 계산을 무한대로 계속하는 동안 부
적절한 정보가 만들어지며, 이로 인해 그림에서 처럼 라우팅 루프가 존재하
게 된다.
이 과정을 멈추기 위한 대응책이 없을 경우 라우팅 업데이트가 다른 라우터
로 브로드캐스팅될 때마다 홉 카운트의 거리 벡터가 증가한다. 이로 인해 라
우팅 테이블에 틀린 정보가 들어가고 데이터 패킷은 네트워크에서 어딘가로
전송된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 루프의 해결방안
•
Routing Looping을 방지하기 위한 방법
- Maximum Metric
- Split Horizon
- Route Poisoning
- Hold-down Timers
- Triggered Update
•
이러한 방법들은 하나만이 사용되는 것이 아니고 일어나야 될 상황이 되면
복합적으로 사용된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
최대 메트릭 설정에 의한 라우팅 루프 문제 해결
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
•
•
•
30.3.0.0
S0
S1
B
Routing Table
S0
E0 X
C
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.
S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
0
30.4.0.0
S0
16
30.3.0.0
S0
1
30.4.0.0
S1
16
30.2.0.0
S0
1
30.4.0.0
S0
16
30.1.0.0
S0
1
30.1.0.0
S0
2
IP 패킷은 IP 헤더의 TTL(Time-to-live) 값을 사용하여 라우팅 루프를 근본
적으로 제한한다. 다시 말해서 라우터는 패킷을 받을 때마다 TTL필드를 최소
한 1씩 줄여야 한다. 이렇게 줄여 나가다가 TTL값이 0이 되면 해당 패킷을
버린다. 그러나 이렇게 한다고 해서 라우터가 다운된 네트워크로 패킷을 전
송하는 것 자체를 막을 수는 없다.
이 문제를 해결하기 위하여 거리 벡터 프로토콜은 무한대를 어느 정도의 최
대값으로서 정의한다. 이 숫자는 홉 카운트와 같은 라우팅 메트릭을 참조한
다.
이 방법이 적용될 경우 라우팅 프로토콜은 메트릭이 허용된 최대값을 초과할
때까지만 라우팅 루프를 허용한다. 그림에서는 최대값을 16홉으로 정의하였
음을 알 수 있다. 메트릭 값이 최대값을 초과한 후에는 30.4.0.0 네트워크에
도달할 수 없는 것으로 간주한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
스플릿 호라이전을 이용한 라우팅 루프 방지
30.1.0.0
30.2.0.0
E0
S0
A
30.3.0.0
S0
S1
B
X
Routing Table
•
•
•
•
30.4.0.0
S0
E0 X
C
X
Routing Table
Routing Table
30.1.0.0
E0
0
30.2.0.0 S0
0
30.3.0.0
S0
0
30.2.0.0
S0
0
30.3.0.0 S1
0
30.4.0.0
S0
0
30.3.0.0
S0
1
30.4.0.0
S1
1
30.2.0.0
S0
1
30.4.0.0
S0
2
30.1.0.0
E1
2
30.1.0.0
S0
2
원래의 업데이트 정보가 온 방향으로 경로 관련 정보를 다시 전송하는 것이
전혀 유용하지 않다는 것이다. 예를 들어 위 그림은 아래에 제시된 내용을 표
현한다.
B 라우터가 C 라우터를 경유하여 30.4.0.0 네트워크로 접근한다. B 라우터
가 C 라우터를 경유하여 30.4.0.0 네트워크에 접근한다는 것을 B 라우터가
C 라우터에게 통보하는 것은 의미가 없다.
B 라우터가 30.4.0.0 네트워크에 대한 경로 정보를 A 라우터에게 넘길 때 A
라우터가 30.4.0.0 네트워크에서 A 라우터까지의 거리를 B 라우터에게 통보
하는 것은 의미가 없다.
30.4.0.0 네트워크로의 대체 경로가 없을 때 B 라우터는 30.4.0.0 네트워크
에 접근할 수 없다고 결론 짓는다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우트 포이저닝을 이용한 라우팅 루프 방지
30.1.0.0
30.2.0.0
E0
S0
A
Routing Table
•
30.3.0.0
S0
S1
B
Routing Table
30.4.0.0
S0
E0 X
C
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.0
S0
0
30.2.0.0
S0
0
30.3.0.0
S1
0
30.4.0.0
S0
Infinity
30.3.0.0
S0
1
30.4.0.0
S1
1
30.2.0.0
S0
1
30.4.0.0
S0
2
30.1.0.0
E1
2
30.1.0.0
S0
2
수렴 시간을 개선하며, 일관적이지 못한 업데이트로 야기되는 라우팅 루프를
없앤다. 라우트 포이저닝 기법을 사용할 경우, 링크를 상실한 라우터는 경로
손실 정보를 네이버 장비에게 광고한다. 수신 라우터는 최대값보다 더 높은
메트릭을 가진 송신지 쪽으로 경로를 되돌려 광고한다. 송신지 쪽으로 되돌
려서 광고할 경우 스플릿 호라이전을 어기는 것처럼 보인다. 그러나 이로 인
해 다운된 네트워크에 관한 업데이트 정보가 수신되었다는 것을 라우터가 알
게 된다. 업데이트 정보를 수신한 라우터는 다른 라우터들이 토폴로지 변경
사항을 점진적으로 정확하게 수렴하는 동안 네트워크 상태가 일관성 있게 유
지되도록 테이블 엔트리를 설정한다. 이 메커니즘에 의해 라우터는 다운 경
로를 신속하게 학습하고 홀드다운 기간 동안 잘못될 수 있는 다른 업데이트
를 무시한다. 이렇게 해서 라우팅 루프를 방지한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
포이즌 리버스
30.1.0.0
30.2.0.0
E0
S0
A
30.3.0.0
S0
S1
B
30.4.0.0
S0
E0 X
C
Poison
Reverse
Routing Table
•
Routing Table
Routing Table
30.1.0.0
E0
0
30.2.0.0
S0
0
30.3.0.0
S0
0
30.2.0.0
S0
0
30.3.0.0
S1
30.4.0.0
S0
Infinity
30.3.0.0
S0
1
30.4.0.0
S1
0
Possibly
Down
30.2.0.0
S0
1
30.4.0.0
S0
2
30.1.0.0
E1
2
30.1.0.0
S0
2
30.4.0.0의 메트릭이 무한대로 갑자기 올라간 것을 본 B 라우터는 포이즌 리
버스(poison reverse)라는 업데이트를 C라우터로 전송하여 그림과 같이
30.4.0.0 네트워크에 접근할 수 없다고 명시한다. 이것은 스플릿 호라이전에
반하는 특수한 상황으로서 해당 세그먼트의 모든 라우터가 못 쓰게 된 경로
에 관한 정보를 수신하였다는 것을 확인하기 위해 이루어진다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
홀드 다운 타이머
Network 30.4.0.0
is unreachable
Update after
hold-down Time
30.1.0.0
E0
30.2.0.0
A
S0
Update after
hold-down Time
•
S0
30.3.0.0
B
S1
S0
30.4.0.0
C
E0
X
문제가 발생한 경로가 부적절하게 라우팅 테이블에 존재하는 것을 방지하기
위해서 라우팅 테이블을 업데이트 할 때 일정 시간을 대기한 후 업데이트 하
게 하여 다른 라우터가 topology변화(Link “Down”)에 대해서 인식할 수 있도
록 한다.
- 예전에는 접근할 수 있었던 네트워크에 이제 접근할 수 없다는 업데이트 정보를 네이버로
부터 수신할 때, 해당 라우터는 해당 경로를 “inaccessible(접근할 수 없는 것)”로 표시하고
홀드다운 타이머를 가동한다.
- 원래 기록되어 있던 것보다 더 좋은 메트릭을 가진 업데이트 정보가 네이버 라우터로부터
도달할 경우, 라우터는 해당 네트워크를 “accessbile(접근할 수 있는 것)”로 표시하고 홀드
다운 타이머를 제거한다.
- 홀드다운 타이머가 끝나기 전에, 더 나쁜 메트릭을 가진 업데이트 정보가 다른 네이버 라
우터로부터 수신될 때 해당 업데이트는 무시된다. 홀드다운이 작동 중일 때 더 나쁜 메트릭
을 가진 업데이트 정보를 무시함으로써 변경 사항을 전체 네트워크로 전파할 시간을 더 많
이 확보 할 수 있다.
- 홀드 다운 기간 동안 라우팅 테이블에서 경로는 “possibly down(다운된 것 같음)”으로 표
시된다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
트리거 업데이트
Network 30.4.0.0
is unreachable
Network 30.4.0.0
is unreachable
30.1.0.0
30.2.0.0
E0
•
•
Network 30.4.0.0
is unreachable
A
S0
30.3.0.0
S0
B
S1
30.4.0.0
S0
C
E0 X
일반적으로 새로운 라우팅 테이블은 이웃 라우터들에게 정기적으로 전송된
다. 트리거 업데이트는 변경에 반응하여 즉시 전송되는 새로운 라우팅 테이
블이다. 변경을 탐지한 라우터는 업데이트 메시지를 인접 라우터에게 바로
보내며, 업데이트 메시지를 받은 인접 라우터는 트리거 업데이트를 생성하여
인접한 다른 네이버에게 변경 사항을 통보한다. 이러한 통보는 네트워크에서
영향을 받은 링크를 사용한 모든 곳으로 차례대로 전파된다.
업데이트 메시지를 적절한 모든 라우터에게 즉시 전송한다는 점에서 트리거
업데이트는 나름대로의 유용성을 가지고 있다. 그러나 두 가지 문제를 안고
있다.
- 업데이트 메시지가 들어 있는 패킷이 네트워크의 어떤 링크에 의해 누락되
거나 손상될 수 있다.
- 트리거 업데이트가 순간적으로 일어나지 않는다. 트리거 업데이트를 아직
수신하지 못한 라우터가 틀린 시간에 맞추어 정기적 업데이트를 만들어서 인
접 라우터에게 전송할 수 있다. 이 경우, 트리거 업데이트를 이미 수신한 네
이버에게 적절치 못한 경로가 다시 갈 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
링크 상태 라우팅 프로토콜
B
C
A
D
Link-State Packets
Topological
Database
Routing
Table
SPF
Algorithm
Shortest Path First Tree
•
•
링크 상태 라우팅 프로토콜은 토폴로지 데이터베이스를 기반으로 라우팅 테
이블을 만든다. 이 데이터베이스는 네트워크 상태를 나타내기 위하여 모든
라우터들 사이에서 넘겨진 링크 상태 패킷들로부터 만들어진다.
SPF(Shortest Path First) 알고리즘이 이 데이터베이스를 사용하여 라우팅
테이블을 만든다. 위 그림에서 링크 상태 프로토콜의 구성 요소를 확인할 수
있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
링크 상태 라우팅 프로토콜
•
각 라우터는 자신이 연결된 Link의 상태(Link State: Bandwidth, Address,
Up-Down State등)를 인접 라우터에 LSA(Link State Advertisement)
Packet을 사용하여 전달한다. LSA를 받은 라우터는 자신의 Topology
Database를 Update한 후 LSA를 다시 인접라우터로 Flooding한다. 각 라우
터는 Topology Database를 기초로 하여 Short-Path-First Algorithm을 사
용, 라우팅 테이블을 추출한다. Link State Routing Protocols에는
OSPF(Open short Path First), IS-IS 등이 있다.
-
Link-State Routing Protocol의 장점
Topology의 변화가 있을 때만 Update를 한다.
Distance Vector Routing Protocol에 비해 Update의 주기가 길다.
Hierarchical하게 구성할 수 있다.
Classless Addressing을 지원한다.
Summarization을 지원하다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
혼합 라우팅 프로토콜의 특징
•
•
•
•
거리 벡터 라우팅 프로토콜과 링크 상태 라우팅 프로토콜의 특징을 합친 세
번째 라우팅 프로토콜이 있으며, 이를 혼합 라우팅 프로토콜이라고 한다.
혼합 라우팅 프로토콜은 거리 벡터를 사용하여 더 정확한 메트릭을 얻으며,
이를 사용하여 수신지 네트워크로 가는 최상의 경로를 결정한다. 그러나 주
기적인 업데이트 대신 라우팅 데이터베이스 업데이트 실행에 의해 만들어진
토폴로지 변경 정보를 사용한다는 점에서 혼합 라우팅 프로토콜이 다른 거리
벡터 프로토콜 차이점을 보이고 있다.
혼합 라우팅 프로토콜의 수렴 시간은 링크 상태 프로토콜만큼이나 빠르다.
그러나 대역폭, 메모리, 프로세서 오버헤드와 같은 필수 자원을 경제적으로
사용한다는 점에서 혼합 라우팅 프로토콜이 다른 링크 상태 프로토콜과 다르
다고 볼 수 있다.
혼합 라우팅 프로토콜의 예로 시스코의 EIGRP(Enhanced Interior Gateway
Routing Protocol)을 들 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
RIP Overview
•
•
•
•
•
•
•
IGP(interior gateway protocol)이다. RIP은 BSD UNIX의 routed로 처음 발
표되었었다.
Distance vector routing protocol이다. Metric factor로 Hop count만을
사용하며 유효한 Hop Count최대값은 15이다.
라우팅 업데이트가 매 30초 간격으로 이루어지며, Full Update이다. 즉 전체
라우팅테이블을 업데이트 한다.
RIP는 6개의 Equal Cost Path를 지원한다.(Default는 4개이다.) maximumpaths 1 명령을 주면 Loadbalancing이 Disable된다. Maximum-paths 6이
최대이다.
Administrative distance는 120이다.
Class-Full routing만을 지원한다. FLSM(Fixed Length Subnetmask)만을
지원한다. Version 2에서는 VLSM(Variable Length Subnet Mask)지원,
Multicast Update 지원 등을 한다.
AS Number를 필요로 하지 않는다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
RIP Timers
•
라우터는 30초 간격으로 인접 라우터에 라우팅 테이블을 브로드캐스트(v1)
로 업데이트한다. 만약 180초 동안 특정 루트에 대해서 Update를 못 받으면
그 루트를 Invalid로 표시한다. 실제로 라우팅 테이블을 지우는 것은 Invalid
처리된 시점에서 60초 후이다.(총 240초 후) 최종적으로 지우는 시점까지는
사실상 유효한 경로로 작동한다. 60초 후에 지우는 이유는 그 동안 Invalid
된 경로에 대한 Routing Information을 인접 라우터에 전달해 주기 위해서
다.
Router Mode에서 timer 명령을 사용하여 조정할 수 있다.
Router(config-router)#timers basic 30 60 60 60
Router#sh ip protocols
Routing Protocol is "rip"
Sending updates every 30 seconds, next due in 11 seconds
Invalid after 60 seconds, hold down 60, flushed after 60
Default
180
180
240
Route invalid
0
30
Invlaid Timer start
60
90
120
150
180
210
Invlaid Timer end
Holddown Timer start
Flush Timer start
Route flush
240
Holddown Timer end
Flush Timer end
possibly down
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
RIP 설정
Router#conf t
Router(config)#router rip
•
Router rip 명령어는 RIP을 라우팅 프로토콜로서 선택한다.
•
Router(config-router)#network network-number
•
Network 명령어는 직접 연결될 라우터로 주 네트워크 번호를 할당한다. 라우
팅 프로세스는 인터페이스 어드레스와 광고된 네트워크 번호를 결합하며, 지
정된 인터페이스에서의 패킷 프로세싱을 시작한다.
•
예제
Router#conf t
Router(config)#interface e0
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#exit
Router(config)#router rip
Router(config-router)#network 192.168.1.0
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
RIP 설정
172.16.1.0
192.168.1.0
E0
S2
S2
S3
A
172.16.1.1
S3
B
30.1.1.1
30.1.1.2
E0
C
30.2.2.2
30.2.2.3
192.168.1.1
Router#conf t
Router(config)#router rip
Router(config-router)#network 172.16.0.0
Router(config-router)#network 30.0.0.0
Router#conf t
Router(config)#router rip
Router(config-router)#network 192.168.1.0
Router(config-router)#network 30.0.0.0
Router#conf t
Router(config)#router rip
Router(config-router)#network 30.0.0.0
RIP 설정 예제
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
RIP Verifying
172.16.1.0
192.168.1.0
E0
S2
S2
A
172.16.1.1
S3
S3
B
30.1.1.1
30.1.1.2
E0
C
30.2.2.2
30.2.2.3
192.168.1.1
RouterA#sh ip protocols
Routing Protocol is "rip"
Sending updates every 30 seconds, next due in 0 seconds
Invalid after 180 seconds, hold down 180, flushed after 240
Outgoing update filter list for all interfaces is
Incoming update filter list for all interfaces is
Redistributing: rip
Default version control: send version 1, receive any version
Interface
Send Recv Key-chain
Ethernet0
1
12
Serial2
1
12
Routing for Networks:
30.0.0.0
172.16.0.0
Routing Information Sources:
Gateway
Distance
Last Update
30.1.1.2
120
00:00:10
Distance: (default is 120)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 테이블 확인
172.16.1.0
192.168.1.0
E0
S2
S2
A
172.16.1.1
S3
S3
B
30.1.1.1
30.1.1.2
E0
C
30.2.2.2
30.2.2.3
192.168.1.1
RouterA#sh ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
T - traffic engineered route
Gateway of last resort is not set
172.16.0.0/24 is subnetted, 1 subnets
C
172.16.1.0 is directly connected, Ethernet0
30.0.0.0/24 is subnetted, 2 subnets
R
30.2.2.0 [120/1] via 30.1.1.2, 00:00:07, Serial2
C
30.1.1.0 is directly connected, Serial2
R 192.168.1.0/24 [120/2] via 30.1.1.2, 00:00:07, Serial2
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 테이블 상태 확인
R
192.168.1.0/24 [120/2] via 30.1.1.2, 00:00:07, Serial2
Output
설명
R or C
목적지에 대한 정보를 어떻게 얻었는지 보여준다.
C – 직접 연결되었다는 것을 표시
R – 목적지에 대한 정보를 dynamic routing protocol인
RIP을 통해서 획득
S – 목적지에 대한 정보를 static route를 통해서 획득했
다는 것을 표시
I – IRGP를 통해서 목적지에 대한 정보를 획득
192.168.1.0
목적지의 네트워크를 표시한다.
120/1
앞의 120은 Administrative distance값으로서 120은 RIP
을 통해서 목적지에 대한 정보를 알았다는 것을 표시하고
1은 dynamic routing protocol인 RIP은 목적지에 대한
metric을 hop count를 이용하기 때문에 목적지가 한 개
의 hop-count(router) 건너에 있다는 것을 알 수 있다.
Via 30.1.1.2
목적지에 대한 정보를 이웃한 라우터의 IP address
30.1.1.2를 통해서 알았다는 것을 표시한다.
00:00:07
목적지에 대한 경로가 얼마 동안 업데이트 되었는지 표시
한다.
Serial2
목적지를 찾아갈 때 라우터의 어떤 인터페이스를 거쳐갔
는지 알 수 있다.
자기 자신의 Serial 2를 통하면 목적지로 통신할 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
RIP version 2의 개요
•
•
RIP version 1과 다른 특징
- Routing update entry에 subnet mask를 포함하여 전달한다. (VLSM지원)
- 라우터 간에 authentication을 지원한다. (simple, md5)
- Routing update entry에 next-hop address를 포함시킬 수 있다.
- Route tag를 지원한다.
- multicast update를 한다.(224.0.0.9)
RIP version 2 명령어
Router(config)#router rip
- 라우터에 rip를 구동시키거나 rip router mode로 들어가는 명령어
Router(config-router)#version {1 | 2}
- RIP의 version을 명시하는 명령어, 이 명령어를 하지 않을 경우는 version 1
로 update를 보내며, version1,2 update를 받는다. version 2 update를 받더
라도 interface에 추가 설정이 없다면 version 1으로 해석한다.
Router(config-if)#ip rip receive version [1] [2]
- 해당 interface에 update 받을 version을 명시함
Router(config-if)#ip rip send version [1] [2]
- 해당 interface에 update 보낼 version을 명시함
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IGRP Overview
•
•
•
•
•
•
•
Interior gateway protocol이다. Cisco사에서 개발한 것으로 시스코 라우터
간에만 사용할 수 있다.
Distance vector routing protocol이다. Metric factor로Bandwidth, Delay,
Reliability, Load, (MTU)를 이용한다.(Composite Metric이라 한다.) Hop
Count는 255개(Default 100개) 까지를 지원한다.( Metric maximum-hops
라는 명령을 Router Configuration Mode 에서 사용한다.)
IGRP는 6개의 Unequal Cost Path를 지원한다.(Default는 4개이다.)
maximum path 1 명령을 주면 Load balancing이 Disable된다. maximum
path 6이 최대이다.
90초마다 routing information을 전달한다. routing information 전체를 전달
하는 full update 방식을 이용한다.
administrative distance는 100이다.
VLSM(Variable Length Subnet Mask) 지원하지 않는다.
AS Number를 필요로 한다. AS Number가 동일한 라우터끼리만 IGRP
routing information을 교환한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IGRP 메트릭
19.2 kbps
19.2 kbps
Source
Destination
Router#show interface fast ethernet 0/0
Fast Ethernet0/0 is up, line protocol is up
MTU 1500bytes, BW 100000 kbit, DLY 100 usec
Reliablility 255/255, txload 1/255, rxload 1/255
•
•
•
•
•
•
IGRP를 구성하는 요소는 아래와 같다.
대역폭(bandwidth) : 경로에서 가장 낮은 대역폭 값
지연(delay) : 경로를 따라서 누적되는 인터페이스 지연
신뢰성(reliability) : 송신지와 수신지 사이의 신뢰성. 킵 얼라이브(keepalive)
의 교환에 의해 결정
로드(load) : 송신지와 수신지 사이 링크의 부하. Bps(bits per second)를 기
준으로 함
MTU(maximum transfer unit) : 경로의 최대 전송 단위 값
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IGRP 비동등 코스트 로드 밸런싱
•
•
•
대역폭이 동일한 이중 라인이 단일의 트래픽 스트림을 라운드 로빈(round
robin) 방식으로 처리하다가, 한 라인이 다운되면 두 번째 라인으로 자동 전
환할 수 있다.
비동등 코스트 로드 밸런싱을 도입할 경우 코스트가 동일하지 않은 6개의 경
로 사이에서 트래픽을 분산시킬 수 있으며, 이를 통해 처리량과 신뢰성을 전
체적으로 향상시킬 수 있다.
IGRP 비동등 코스트 로드 밸런싱에 적용할 수 있는 일반 규칙은 아래와 같다.
- IGRP는 1개의 특정 네트워크에 대한 경로를 6개까지 인정한다(디폴트는 4개)
- 로컬 라우터가 최상의 경로에 의해 수신지와 가까이 있을 수 있지만 모든 경로에서 수신지
에 가장 가까이 있어야 하는 것은 다음 홉 라우터이어야 한다. 이를 통해 라우팅 루프 시작
을 방지할 수 있다.
- 대체 경로 메트릭은 로컬 최상 메트릭의 지정 편차 안에 있어야 한다.
20
10
Router(config)#
Variance 2
10
B
10
네트워크 Z
C
A
E
25
5
D
Router E가 네트워크 Z를 찾아가는 최적의 경로:
-> Router C를 통해서, 이경우의 Metric값은 10+10=20
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IGRP 설정
Router(config)#router igrp autonomous-system
•
라우터에 IGRP Enabling
- IGRP의 AS는 반드시 국제 공인 기관인 IANA에 등록될 필요는 없는 숫자이다.
- 그 대신에 하나의 AS에 포함된 모든 라우터는 동일한 AS 숫자를 사용해야 한다.
- 동일하지 않은 AS 숫자를 사용할 경우에는 서로간에 라우팅 정보를 주고 받지 않는다.
Router(config-router)#network network-number
•
네트웍 선언
- 라우팅되어야 할 IP network을 명시한다. (Routing Update가 전달되어야 할 직접 연결된
네트워크를 명시한다.)
- 라우터에 직접 연결된 인터페이스의 major network(Classful)를 지정한다.
Router(config-router)#variance multiplier
•
Router(config-router)#variance 4
- Traffic-Share Balanced는 어떤 network에 이르는데 있어 동일하지 않은 Metric 값을 갖
는 6개까지의 path로 Load Balancing 할 수 있다.
Router(config-router)#traffic-share { balanced | min }
•
Router(config-router)#traffic-share balanced
- Variance는 Traffic-Share Balanced 하는데 있어 Best Metric의 몇배 까지의 Metric 값을
갖는 path를 허용할 것인가를 결정한다.
“traffic-share balanced”로 설정되어 있을 경우: Matric 값의 비율에 따라 Balancing한다.
“traffic-share min”로 설정되어 있을 경우 unequal path는 존재하지만 데이터가 목적지까
지 도달할 때까지 이용하는 path는 최적의 path(metic값이 적은 path)만을 이용해서 보낸
다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IGRP 설정 예
Autonomous System = 100
E0
172.16.1.0
S2
A
172.16.1.1 10.1.1.1
S2
S3
S3
B
10.1.1.2
E0
C
10.2.2.2 10.2.2.3
192.168.1.0
192.168.1.1
Router#conf t
Router(config)#router igrp 100
Router(config-router)#network 172.16.1.0
Router(config-router)#network 10.0.0.0
Router#conf t
Router(config)#router igrp 100
Router(config-router)#network 10.0.0.0
Router#conf t
Router(config)#router igrp 100
Router(config-router)#network 192.168.1.0
Router(config-router)#network 10.0.0.0
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IGRP 설정 확인
Autonomous System = 100
E0
172.16.1.0
S2
A
172.16.1.1 10.1.1.1
S2
S3
S3
B
10.1.1.2
E0
C
10.2.2.2 10.2.2.3
192.168.1.0
192.168.1.1
RouterA#sh ip protocols
Routing Protocol is "igrp 100"
Sending updates every 90 seconds, next due in 21 seconds
Invalid after 270 seconds, hold down 280, flushed after 630
Outgoing update filter list for all interfaces is
Incoming update filter list for all interfaces is
Default networks flagged in outgoing updates
Default networks accepted from incoming updates
IGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
IGRP maximum hopcount 100
IGRP maximum metric variance 1
Redistributing: igrp 100
Routing for Networks:
10.0.0.0
172.16.0.0
Routing Information Sources:
Gateway
Distance
Last Update
10.1.1.2
100
00:01:01
Distance: (default is 100)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅 테이블 확인
Autonomous System = 100
E0
172.16.1.0
S2
A
172.16.1.1 10.1.1.1
S2
S3
S3
B
10.1.1.2
E0
C
10.2.2.2 10.2.2.3
192.168.1.0
192.168.1.1
RouterA#sh ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
T - traffic engineered route
Gateway of last resort is not set
172.16.0.0/24 is subnetted, 1 subnets
C
172.16.1.0 is directly connected, Ethernet0
10.0.0.0/24 is subnetted, 2 subnets
I
10.2.2.0 [100/90956] via 10.1.1.2, 00:00:23, Serial2
C
10.1.1.0 is directly connected, Serial2
I 192.168.1.0/24 [100/91056] via 10.1.1.2, 00:00:23, Serial2
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
show protocol Command
•
Show Protocols 명령
- Show protocols 명령어는 각각의 interface에 설정된 network layer의
- 주소를 볼 수 있어서 유용하다.
RouterB#sh protocols
Global values:
Internet Protocol routing is enabled
Ethernet0 is up, line protocol is up
Internet address is 192.168.2.254/24
Serial0 is up, line protocol is up
Internet address is 192.168.1.253/24
Serial1 is administratively down, line protocol is down
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
ip classless Command
E0
S0
172.16.0.0
10.7.7.1
10.1.0.0
10.2.0.0
Default route
Router(config)#ip classless
To get to 10.7.7.1:
ip classless : Default Route로 전송
no ip classless :Drop
•
Network
Protocol
C
C
RIP
Destination
Network
10.1.0.0
10.2.0.0
172.16.0.0 via
0.0.0.0
Exit Interface
E0
S0
S0
E0
10.0.0.0을 255.255.255.0로 서브네팅 한 경우, 10.0.0.0 네트워크의 서브
넷으로 가는 패킷 즉 Destination이 10.7.1.1인 패킷의 경우 Drop 된다. 물
론 10.1.0.0, 10.2.0.0 네트워크로 가는 패킷은 정상적으로 라우팅된다.
10.7.0.0 네트워크에 대한 경로가 라우팅 테이블에 없을 때, 그 네트워크로
가는 패킷은 Default Route를 설정했으면 그곳으로 Packet을 보내야 하는
데도 불구하고 Packet을 Drop 시킨다. 이러한 원인은 10.0.0.0의 서브네트
워크 를 일부 알고 있다면 10.0.0.0의 모든 서브넷을 인식해야 한다는 가정
에 기인한다. 그래서 10.7.0.0 네트워크로 가는 패킷에 대해서는 설정된
Default Route를 사용하지 않는다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
OSPF의 개요
•
Link State Protocol이다.
•
Open Architecture로서 특정 Vendor에 종속적이지 않다.
•
Convergence의 속도가 빠르다. Default (6초 - 46초)
•
VLSM 및 CIDR을 지원한다.
•
Reachability Limitation이 없다.
•
Use of Bandwidth : 네트워크에 변화가 있을 때만 Multicast (224.0.0.5,
224.0.0.6)로 Link State Update를 한다.
•
Path Selection Method : OSPF는 Bandwidth에 기초한 Cost Value를 Path
Selection에 사용한다.OSPF는 Equal-Cost Multiple Path를 지원한다.
•
Authentication : Neighbor 간의 교환되는 모든 Routing Update를 인증하
게 할 수 있다. 인증방법으로 Clear Text Password Authentication 및 MD5
Checksum을 지원한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
OSPF 구성요소
Autonomous System
Area 0
Neighbors
Interfaces
Cost = 10
Area 1
Cost = 6
Cost = 1785
Neighborship
Database
Lists Neighbors
•
•
•
•
•
•
Topology
Database
Lists All Routes
Routing
Table
Lists Best Routes
OSPF는 area라는 AS보다 작은 단위의 영역으로 다시 나누어 진다.
이러한 Area는 하나의 AS내에 하나의 Area로 구성할 수도 있고, 여러 개의
다른 Area로 구성될 수도 있다.
여러 개의 Area로 구성될 경우 원칙적으로 백본 즉 Area 0는 반드시 있어야
하고 나머지 Area들은 물리적으로 Area 0에 접해있어야 한다.
Area는 Interface별로 정의 된다.
Area내의 모든 라우터는 동일한 Topology Database를 갖는다.
Cost는 100M의 Link가 1의 값을 갖는다. ip ospf cost 명령을 사용하여 수
동으로 설정이 가능하다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Adjacency with DR and BDR
DR
•
•
•
•
•
BDR
Ethernet 등 Multiaccess Broadcast Network 환경에서는 DR, BDR을 선출
하여 그것들을 중심으로 LSA를 교환한다.
Hello Packet을 사용하여 Segment를 대표하는 DR, BDR을 선출한다.
이후 각각의 라우터는 DR, BDR과의 Adjacency를 확보한다.
BDR은 라우터들로부터 LSA를 받지만 Flooding 시키지 않는다. DR Fail 시
에 DR로 작동한다.
DR과 BDR은 OSPF 우선순위와 OSPF 라우터 ID를 기반으로 선출된다. 우선
순위는 인터페이스별로 설정될 수 있다. 디폴트 우선순위는 1이므로 라우터
ID가 DR과 BDR이 되기를 원치 않을 경우 해당 인터페이스에 대해 우선 순위
를 0으로 설정할 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
DR과 BDR 선출
P=3
P=2
DR
BDR
Hello
P=1
•
•
•
•
P=1
P=0
Hello packet은 IP multicast(224.0.0.5)를 사용하여 교환된다.
Interface의 Default OSPF priority는 1이다.OSPF Priority가 동일한 경우 가
장 높은 라우터 ID를 갖는 라우터가 DR로 선출된다.
OSPF의 우선 순위가 높은 라우터, 또는 Router ID가 높은 라우터가 네트워
크 상에 나타나도 DR, BDR은 바뀌지 않는다.
debug ip ospf adj 명령을 통해 DR/BDR Election Process를 관찰할 수 있
다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
OSPF의 기본 명령어
Router(config)#router ospf process_id
•
라우터에 ospf를 구동시키거나 ospf router mode로 들어가는 명령어
Router(config-router)#network address inverse_mask area area_id
•
OSPF에 포함되는 interface를 지정하고 해당하는 area를 설정한다.
Router#show ip ospf database
•
ospf의 database를 확인 할 수 있다.
Router#show ip ospf neighbor
•
네이버 테이블을 보여준다. 각 라우터의 역할과 연결관계를 알 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
OSPF의 설정 예
Broadcast Network
E0
A
Point-to-Point Network
S0
10.64.0.2
10.64.0.1
E0
10.2.1.2
B
10. 2.1.1
S1
C
<Output Omitted>
interface Ethernet0
ip address 10.64.0.1 255.255.255.0
!
<Output Omitted>
router ospf 1
network 10.64.0.0 0.0.0.255 area 0
<Output Omitted>
interface Ethernet0
ip address 10.64.0.2 255.255.255.0
!
interface Serial0
ip address 10.2.1.2 255.255.255.0
<Output Omitted>
router ospf 1
network 10.2.1.2 0.0.0.0 area 0
network 10.64.0.2 0.0.0.0 area 0
네트워크 Address또는 Interface
Address를 할당한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
EIGRP의 개요
•
•
•
•
•
•
•
•
•
•
Advanced Distance Vector Routing Protocol로 Hybrid Routing Protocol
이이다.(Link State와 Distance Vector Routing Protocols의 장점을 결합했
다.)
VLSM, Discontiguous Network,Classless Routing을 지원한다.
Rapid Convergence를 위하여 DUAL(Diffusing Update Algorithm)을 사용
한다.
Unequal Cost Path Load Balancing을 한다.
Routing Update에 있어 Bandwidth 적게 사용한다.: 주기적인 업데이트를
하지 않는다. 변화된 Link에 대한 Routing Information 을 즉시 Update를 한
다. (Incremental Update, Partial Update)
Metric factor로는 IGRP와 마찬가지로 Bandwidth, Delay, Reliability, Load,
(MTU)를 이용한다.(Composite Metric이라 한다.) IGRP와 계산방식은 같은
나 IGRP값의 256을 곱한값이 EIGRP metric값이다.
Routing Information이 필요한 라우터에만 Update를 한다.(Multicast
Update)
네트워크 상의 모든 라우터의 모든 Interface에서 Manual Summarization이
가능하다.
시스코 전용(Cisco Proprietary) Routing Protocol이다.
Authentication : Neighbor 간의 교환되는 모든 Packet을 인증하게 할 수 있
다. 인증방법으로 MD5 Checksum만을 지원한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
EIGRP의 기본 명령어
Router(config)#router eigrp autonomous-system-number
• 라우터에 eigrp를 구동시키거나 eigrp router mode로 들어가는 명령어
• 모든 EIGRP 라우터는 동일한 AS번호를 사용해야 한다.
Router(config-router)#network network-number [wildcard-mask]
• EIGRP에 포함되는 인터페이스를 지정한다.
• 와이드카드 를 사용하면 정확하게 인터페이스를 지정할 수 있다.
Router#show ip eigrp topology
• eigrp의 topology database를 확인 할 수 있다.
EIGRP의 설정 예
AS =
109
10.4.0.
0
S
1
E
0
10.1.0.
192.168.1.
S
0
0
0
172.16.6.0
A
S
2
B
10.2.0.
0
D
172.16.7.0
C
172.16.2.0
D
172.16.3.0
router eigrp 109
network 10.0.0.0
network 172.16.0.0
172.16.4.0
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우팅
• IP Routing 프로토콜의 개념
•Access List를 사용한 기본적인 IP Traffic의 관리
•Router 실습
라우팅
엑세스 리스트란?
한 장소에서 다른 장소로 차량 흐름을 이동시키기 위해 도로를 만드
는 것처럼 한 장소에서 또 다른 장소로 사용자 흐름을 이동시키기 위해
네트워크를 설계한다. 데이터 네트워크에서 라우터가 트래픽 연결지점
역할을 수행한다. 도로나 네트워크에서 트래픽 흐름을 제어하는 것이
가끔은 필요하다. 고속도로에서는 교통 흐름을 제어하는 방법이 많이
있다. 네트워크에서도 다른 많은 데이터 네트워크로 가고 오는 트래픽
을 확인하고 필터링하는 방법이 필요하다. 라우터에서는 ACL(access
control list)을 사용하여 트래픽 식별, 필터링, 암호화, 분류, 변환 작업
을 수행할 수 있으며, 이렇게 하여 네트워크 기능의 관리 및 통제 효율
성을 향상 시킬 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
엑세스 리스트 Overview/특징
•
엑세스 리스트 Overview
- Access List란 단어 자체에서 의미하듯이 라우터를 경유하는 트래픽에 대한 제어를 할 수
있는 것으로 어떤 트래픽을 어떻게 제어할 것인지를 정의한다.
- 라우터에 연결되는 LAN과 호스트 수의 증가와 인터넷의 발달로 네트워크 Performanace
를 극대화하기 위해서는 트래픽 Access(접근) 통제 정책을 수립할 필요가 있다. 정책을 수
립해야 할 내용 중에는 어떤 트래픽을 어떻게 제어할 것인지를 확정하고 불필요한 연결은
어떻게 사전에 미리 막아야 하는지를 포함한다.
•
엑세스 리스트의 특징
- Packet Filtering을 통해 네트워크의 트래픽을 제한하거나, 특정 사용자나 장치에 의해 사
용되는 네트워크 자원을 제한할 수 있다.
- Access List는 일반적으로 라우터의 특정 인터페이스를 통과하는 패킷을 허용하거나 제한
할 수 있다.
- 사용자가 라우터에 Telnet 접근하는 것을 허용하거나 제한할 수 있고, 라우터로부터 다른
장치나 호스트에 Telnet 접근하는 것을 허용하거나 제한할 수도 있다.
- Access List는 라우터를 통과하는 트래픽을 제한할 수 있지만 라우터에서 만들어지는 트
래픽에 대해서는 제한이 불가능하다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Access List 쓰임
•
Priority and custom queuing
- Router를 통과하는 트래픽의 종류에 따라 별도의 Priority를 주어 각각의 트
래픽 처리 속도를 다르게 할 수 있다.
Queue
List
•
Dial-On-Demand Routing
- ISDN, Dial-Up환경에서는 사용량에 따라서 요금이 다르게 적용되는데,
Access List와 같이 연동해서 사용자가 필요한 데이터만 ISDN, Dial-Up을
사용할 수 있도록 하여 요금이 적게 나오도록 할 수 있다.
•
Route Filtering
- 라우터는 라우팅 프로토콜을 통해서 라우팅테이블을 만들게 되는데, 이 때
필요한 라우팅 정보만을 주고 받을 수 있도록 제한할 수 있다.
Routing
Table
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Access List 쓰임
E0
Incoming
Packet
Access List Processes
Source
and
Destination
Outgoing
Packet
Protocol
Permit?
S0
•
Access List는 라우터를 통과하는 패킷을 목적지로 보낼 것인지 제한할 것인
지를 지정해서 불필요한 트래픽은 제거하고 네트워크 자원의 보안을 위해 설
정되는 명령어이다. 하지만 반드시 설정이 필요한 명령어는 아니다.
•
Standard Access List
- Source Address만을 체크해서 패킷의 전송 여부를 결정하는 방식으로 특정 프로토콜
(FTP, TFTP, Telnet)에 따라 패킷의 전송 허용/제한이 불가능한 방식이다.
•
Extended Access List
- Source Address와 Destination Address 모두를 체크해서 패킷의 전송 여부를 결정하는
방식으로 특정 프로토콜(FTP, TFTP, Telnet)에 따라 패킷의 전송 허용/제한이 가능한 방식
이다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Access List 적용위치
•
Inbound Access List
- 라우터에 수신되는 패킷이 라우터의 Outbound Interface로 전달되기 전에 Access List가
적용된다. 따라서 Filtering에 의해 패킷이 제거되면 라우터 내부에서 처리되는 것이 없기
때문에 별도의 라우팅 Lookup overhead를 감소시킬 수 있어서 효율적인 방법이라고 할 수
있다.
•
Outbound Access List
- 라우터에 수신된 패킷이 라우터의 Outbound Interface까지 전달된 후 Access List가 적
용된다.
- 라우터의 Inbound Interface에 패킷이 들어 왔을 경우 처음에는 라우팅 테이블을 참조해서 목적지
에 대한 주소가 존재하면 맞는 인터페이스 패킷이 전송되고, 그렇지 않는 경우에는 버려진다.
- 인터페이스에 Access List가 설정되어 있는지를 체크하고 없으면 패킷을 보내고, 적용되어 있으면
Access List의 조건을 체크한다.
- 조건을 체크해서 조건과 일치하면 Permit/Deny 설정 상태에 따라 패킷을 전송/폐기한다.
- 마지막 Access List까지 조건과 일치하지 않으면 패킷은 폐기 된다.
☞ 참고
라우터를 기준으로 생각하면 된다.
패킷 흐름 방향
Inbound
Outbound
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Outbound Access Lists
Packet
인터페이스
Inbound
Interface
S0
선택
Y
Outbound
Packets
Interfaces
조건문
라우팅
체크
테이블
S0
유/무?
N
Access
Packet
N
List
Y
Permit
?
?
Y
N
Discard Packet
Packet Discard Bucketa
(Notify Sender)
•
•
아웃 바운드 엑세스 리스트의 사용 여부에 상관없이 처리 과정의 시작은 동
일하다. 패킷이 한 인터페이스로 들어오면 라우터는 라우팅 테이블을 검사하
여 해당 패킷의 경로를 설정할 수 있는지 없는지를 검사한다. 수신지 어드레
스로 가는 경로가 없을 경우 패킷을 버린다.
그 다음에 라우터는 수신지 인터페이스를 하나의 엑세스 리스트로 그룹화할
수 있는지 없는지를 파악하기 위한 검사 작업을 수행한다. 그룹화할 수 없을
경우 해당 패킷은 출력 버퍼로 전송될 것이다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Access List Condition Tests
Packets to Interface(s)
Y
in the Access Group
첫번째
조건문
?
Y
N
Permit
Deny
Deny
Y
두번째
조건문
?
Y
Permit
Destination
N
Deny
Y
Interface(s)
마지막 Y
조건문
?
Permit
N Implicit
Deny
Packet
Deny
If no match
deny all
Discard
Bucket
•
•
엑세스 리스트 패킷 테스트가 어떻게 이루어지는지 그 흐름을 보여주며, 여
기서 permit나 deny 옵션이 적용되며, 해당 패킷에 대해서 그 다음의 후속
테스트들이 끝난다. 앞의 문장에서 패킷을 거부했던 조건이 그 뒤의 문장에
서 복원될 수 없다. 이것은 특정 엑세스 리스트 내에서 문장의 순서가 중요하
다는 것을 내포한다.
마지막에 있는 문장은 조건 테스트를 통과하지 못한 모든 패킷에 적용된다.
이 마지막 테스트 조건은 다른 모든 패킷과 일치하며 deny 조건으로 결론지
어지며, 그 결과 패킷을 거부한다. 이 마지막 문장을 묵시적인(implicit) deny
any라고도 한다. 이 문장 때문에 최소한 1개의 permit 문장을 포함해야 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
프로토콜당 엑세스 리스트 범위와 기본 설정 방법
•
엑세스 리스트 범위
Number Range/Identifier
Access List Type
IP
Standard
Extended
Named
1-99
100-199
Name (Cisco IOS 11.2 and later)
IPX
Standard
Extended
SAP filters
Named
800-899
900-999
1000-1099
Name (Cisco IOS 11.2. F and later)
•
기본 설정 방법
- Global Mode에서의 설정
Router(config)#access-list access-list-number { permit | deny } { test conditions}
- Interface에 적용
Router(config-if)#{ protocol } access-group access-list-number {in | out}
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
표준 엑세스 리스트
Frame
Header
(for example,
HDLC)
Packet
(IP header)
Segment
(for example,
TCP header)
Source
Address
Use
access
list statements
1-99
Deny
•
•
Data
Permit
IP Header 부분 중 Source Address를 분석해서 조건문과 일치하면
Permit/Deny 설정 상태를 확인하고 패킷을 전송/폐기한다. (Layer 3 정보를
체크해서 패킷의 전송 여부를 판단한다.)
Standard Access List는 1~99까지 적용되고 있음을 알 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
확장 엑세스 리스트
Layer2
Frame
Header
(for example,
HDLC)
Layer3
Packet
(IP header)
Layer4
Segment
(for example,
TCP header)
Data
Port Number
Protocol
Source Address
Access List
Destination Address
100~199사용
Deny
•
•
•
Permit
Extended Access Lists는 Layer 3, 4의 상태를 체크해서 패킷의 전송 여부
를 판단한다.
적용 Number는 100~199까지 지정되어 있다.
Extended Access Lists가 체크해야 하는 항목은 Source Address,
Destination Address, Protocol (TCP, UDP, ICMP), Port Number (Telnet23, FTP-20, DNS-53등)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Wildcard Bits (Address Mapping 방법)
128
64
32
16
8
4
2
8bit position and
Address value for bit
1
Examples
모든 것이 일치해야 함.
0
0
0
0
0
0
0
0
=
0
0
1
1
1
1
1
1
=
ignore last 6 address bits
0
0
0
0
1
1
1
1
=
ignore last 4 address bits
1
1
1
1
1
1
0
0
=
check last 2 address bits
1
1
1
1
1
1
1
1
=
•
•
•
•
Wildcard Mask는 IP Address List나 OSPF에서 Network Command 설정 시
사용되고 있다.
Wildcard Mask의 Rule은 다음과 같다.
- Wildcard Bits의 0은 IP Address Bits와 반드시 일치해야 한다.
- Wildcard Bits의 1은 IP Address Bits아 일치해야 할 필요가 없다.
Subnet Mask에서의 0은 일치할 필요가 없고, 1은 반드시 일치해야 하는 특
성이 있는데
위의 Wildcard Mask와 완전히 반대로 동작한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Matching Any IP Address
•
테스트 조건 : 모든 어드레스 비트가 무시된다. (match any)
Any IP address
0.0.0.0
Wildcard mask:
255.255.255.255
(ignore all)
•
•
Accept any address: 0.0.0.0 255.255.255.255
Ip address의 어떤 값도 일치 할 필요가 없으므로 모든 ip address가 된다.
따라서 any라는 key word로 대체 할 수 있다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Wildcard Bits
•
Check for IP subnets 130.30.16.0/24 to 130.30.31.0/24
Address and wildcard mask:
130.30.16.0 0.0.15.255
Network .host 130.30.16.0
0
Wildcard mask:
0
0
0
0
1
0
1
0
1
1
0
0
0
0
1
|<---- match ---->|<----- don’t care ----->|
0
0
0
1
0
0
0
0
=
16
0
0
0
1
0
0
0
1
=
17
0
0
0
1
0
0
1
0
=
18
=
31
:
0
0
0
1
1
1
1
1
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
Wildcard Bits Address Mapping 예제
Address
Wildcard Mask
설명
130.0.0.0
0.255.255.255
반드시 일치할 필요가 있는 0으로 설정된 것이
앞에서 8개 Bit이기 때문에 130.0.0.0/8에 속하
는 모든 것을 수용한다.
130.0.0.1~130.255.255.255
130.10.0.0
0.0.255.255
반드시 일치할 필요가 있는 0으로 설정된 것이
앞에서16개 Bit이기 때문에 130.10.0.0/16에
속하는 모든 것을 수용한다.
130.10.0.1~130.10.255.255
130.10.8.0
0.0.7.255
00000111
130.10.8.0/21에 속하는 모든 것을 수용한다.
130.10.8.1~130.10.15.255
130.10.8.0
0.0.0.255
130.10.8.0/24에 속하는 모든 것을 수용한다.
130.10.8.1 ~ 130.10.8.255
130.10.8.1
0.0.0.0
오직 130.10.8.1만을 수용한다. Host
130.10.8.1로 표현되기도 한다.
0.0.0.0
255.255.255.255
모든 IP Address를 수용하고자 할 경우 설정
any로 표현되기도 한다.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
표준 엑세스 리스트 예제
135.20.3.0
Non135.20.0.0
135.20.4.0
S0
E0
•
E1
135.20.4.13
외부로 연결된 구간 중에서 135.20.0.0만 허용하고 나머지는 거부하는 엑세
스 리스트 설정
Access-list 1 permit 135.20.0.0 0.0.255.255
(implicit deny all - not visible in the list)
(access-list 1 deny 0.0.0.0 255.255.255.255)
interface ethernet 0
ip access-group 1 out
interface ethernet 1
ip access-group 1 out
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
표준 엑세스 리스트 예제(Host)
•
오직 135.20.4.13인 Host에서 오는 패킷만 폐기하고 다른 모든 패킷은 허용
135.20.3.0
Non135.20.0.0
135.20.4.0
S0
E0
E1
135.20.4.13
access-list 1 deny 135.20.4.13 0.0.0.0
access-list 1 permit 0.0.0.0 255.255.255.255
(implicit deny all)
(access-list 1 deny 0.0.0.0 255.255.255.255)
interface ethernet 0
ip access-group 1 out
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
표준 엑세스 리스트 예제(Subnet)
•
135.20.4.0 네트워크에서 들어오는 모든 패킷이 폐기되도록 설정
135.20.3.0
Non135.20.0.0
135.20.4.0
S0
E0
E1
135.20.4.13
access-list 1 deny 135.20.4.0 0.0.0.255
access-list 1 permit any
(implicit deny all)
(access-list 1 deny 0.0.0.0 255.255.255.255)
interface ethernet 0
ip access-group 1 out
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
표준과 확장 엑세스 리스트
•
•
•
Standard IP Access List는 오직 Source Address만 체크해서 패킷을 전송/
폐기하기 때문에 좀더 세분화된 패킷 Filtering을 위해서는 Source Address,
Destination
Address, TCP/UDP Port까지 체크한 후 패킷의 전송/폐기를 결정하는
Extended IP
Address List가 필요하다.
Standard
Extended
L3 Source Address를 근거로 해서
Filtering
L3,4 Source/Destination
Address를 근거로 해서 Filtering
Permit/Deny가 모든 TCP/IP 적용
특정 프로토콜별/포트별 Access
List 적용이 가능
범위는 1~99
범위는 100~199
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
확장 IP 엑세스 리스트 설정
Router(config)# access-list access-list-number
{ permit | deny } protocol source source-wildcard
[operator port] destination destination-wildcard
[ operator port ] [ established ] [log]
•
Global Configuration Mode 에서 access list 작성
Router(config-if)# ip access-group access-list-number { in | out }
•
Interface mode에서 access list 적용
•
•
각 매개변수와 옵션을 살펴보자
Access-list-number : 엔트리가 속할 리스트를 나타낸다. 여기서 100~199
나 2000~2699 사이에 있는 한 숫자를 사용하여 해당 리스트를 식별한다.
Permit | deny : 해당 엔트리가 지정된 어드레스를 허용하는지 또는 차단하
는지를 나타낸다.
Protocol : IP, TCP, UDP, ICMP, GRE, IGRP다.
Source와 destination : 각기 송신지 및 수신지 IP 어드레스를 가리킨다.
Source-wildcard와 destination-wildcard : 와일드카드 마스크를 나타낸다.
0은 일치해야 하는 위치를 나타내며, 1은 ‘don’t care’ 위치를 나타낸다.
Operator port : lt(less than), gt(greater than), eq(euqal to), neq(not
equal to)와 프로토콜 포트 번호다.
Established : 인바운드 TCP에 대해서만 사용된다. 패킷이 수립된 연결을 사
용할 경우(예 : ACK 비트 세트를 가질 경우) established가 설정되어 있으면
TCP 트래픽이 통과한다.
•
•
•
•
•
•
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
확장 IP 엑세스 리스트에서 사용하는 포트 번호
•
잘 알려진 포트 번호
잘 알려진 포트 번호(10진수)
IP 프로토콜
20
FTP(File Transfer Protocol) 데이터
21
FTP(Filel Transfer Protocol) 프로그램
23
텔넷
25
SMTP(Simple Mail Transport Protocol)
69
TFTP(Trivial File Transfer Protocol)
53
DNS(Domain Name System)
80
WWW(HyperText Markup Language)
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
확장 IP 엑세스 리스트 설정 예제
•
135.20.4.0/24 네트워크로부터 오는 FTP 패킷을 E0에서 폐기시키고 다른
모든 패킷은 전송
135.20.3.0
Non135.20.0.0
S0
E0
E1
FTP
135.20.4.0
135.20.4.13
access-list 101 deny tcp 135.20.4.0 0.0.0.255 135.20.3.0 0.0.0.255 eq 21
access-list 101 deny tcp 135.20.4.0 0.0.0.255 135.20.3.0 0.0.0.255 eq 20
access-list 101 permit ip any any
(implicit deny all)
(access-list 101 deny ip 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255)
interface ethernet 0
ip access-group 101 out
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
확장 IP 엑세스 리스트 설정 예제
•
135.20.4.0/24 네트워크로부터 오는 Telnet 접속을 E0에서 제한(거부)
135.20.3.0
Non135.20.0.0
S0
E0
E1
135.20.4.0
135.20.4.13
access-list 101 deny tcp 135.20.4.0 0.0.0.255 any eq 23
access-list 101 permit ip any any
(implicit deny all)
interface ethernet 0
ip access-group 101 out
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
이름이 붙은 IP 엑세스 리스트
•
•
Cisco IOS 11.2 이상에서만 적용이 가능하다.
Numbered IP Access List는 조건문 제거시 모든 Numbered Access List가
삭제되기 때문에 처음부터 다시 모든 Access List를 다시 입력해야 하는 문
제가 있지만 Named IP Access List는 원하는 조건문만 제거할 수 있다.
•
1단계 : Global configuration에 Named Access List를 설정한다.
Router(config)#ip access-list { standard | extended } name
•
2단계 : 조건문을 설정한다.
Router(config{std- | ext-}nacl)#{permit | deny} {ip access list test conditions}
Router(config{std- | ext-}nacl)#{permit | deny} {ip access list test conditions}
Router(config{std- | ext-}nacl)#no {permit | deny} {ip access list test conditions}
•
3단계 : 인터페이스에 Named Access List를 Mapping 시킨다.
Router(config-if)#Ip access-group name { in | out }
•
이름이 붙은 IP 엑세스 리스트 예제
Named IP Access Lists Example
RouterB(config)#ip access-list standard test
RouterB(config-std-nacl)#permit 10.1.1.1
RouterB(config-std-nacl)#end
RouterB#sh ip access-list
Standard IP access list test
permit 10.1.1.1
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IP 엑세스 리스트 확인
wg_ro_a#show ip int e0
Ethernet0 is up, line protocol is up
Internet address is 10.1.1.11/24
Broadcast address is 255.255.255.255
Address determined by setup command
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is disabled
Outgoing access list is not set
Inbound access list is 1
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is enabled
IP fast switching on the same interface is disabled
IP Feature Fast switching turbo vector
IP multicast fast switching is enabled
IP multicast distributed fast switching is disabled
<text ommitted>
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
IP 엑세스 리스트 모니터링
Router#show {protocol} access-list {access-list number}
Router#show access-lists {access-list number}
Router#show access-lists
Standard IP access list 1
permit 10.2.2.1
permit 10.3.3.1
permit 10.4.4.1
permit 10.5.5.1
Extended IP access list 101
permit tcp host 10.22.22.1 any eq telnet
permit tcp host 10.33.33.1 any eq ftp
permit tcp host 10.44.44.1 any eq ftp-data
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우터 실습
192.168.1.0/24
Fa0/0
192.168.4.0/24
S0
S1
S0
192.168.5.0/24
Fa0/0
S0
S0
192.168.2.0/24
•
•
Fa0/0
192.168.3.0/24
RIP 프로토콜을 이용하여 라우터를 구성할 것.
OSPF 프로토콜을 이용하여 라우터를 구성할 것.
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005
3
라우터 실습
192.168.1.0/26
Fa0/0
S0
S1
192.168.1.192/30
Fa0/0
S0
192.168.1.196/30
S0
192.168.1.64/26
•
•
Fa0/0
192.168.1.128/26
RIP 프로토콜을 이용하여 라우터를 구성할 것
OSPF 프로토콜을 이용하여 라우터를 구성할 것
Copyright 2005 Sun Microsystems,Inc. All Rights Reserved. 2005