● OSPF 최적 경로 선출 과정

 

OSPF에서 최적 경로를 선출하기 위해 Route Type을 사용합니다. Network 경로정보 학습의 기준에 따라 Intra, Inter, External로 나뉩니다. 

 

동일한 네트워크 경로정보가 존재하더라도 아래의 기준에 따라 최적 경로가 선출되고, 다시 COST값을 비교 한 뒤 최종적으로 최적 경로가 선출 됩니다.

우선
순위
분류 설명


높음
-----
우선
순위
-----
낮음

O 현재 라우터가 속한 Area에서 경로를 학습한 경우 Intra-area routes라고 하며 OSPF 라우팅 테이블에서 표기는 O 입니다.
O IA ABR(Area Boder Router)를 통해 경로를 학습한 경우 inter-area route라고 하며 OSPF 라우팅 테이블에서의 표기는 O IA 입니다.
O E1/N1 재분배(Redistribution)을 통해 학습한 경로를 의미하며, 라우터에서 목적지 네트워크 까지의 COST값을 계산하여 라우팅 테이블에 내리기 때문에 COST 값이 가변적 입니다. "N"은 NSSA에서 재분배한 경로 입니다.
O E2/N2 재분배(Redistribution)을 통해 학습한 경로를 의미하며, 기본적으로 Cost값은 20을 가지며 해당 값은 변경되지 않습니다. "N"은 NSSA에서 재분배한 경로 입니다.

 

 OSPF Loop Avoidance 방법과 부작용

 

OSPF는 Link-State Protocol 이지만, Area 사이는 Distance Vector 처럼 동작합니다. 동일 Area에서 발생하는 정보는 LSA Type 1 / 2 정보로 OSPF에 참여하는 모든 라우터가 동일한 토폴로지를 생성하고 동일한 LSDB를 가지고 있지만 외부 Area의 정보는 상세한 정보 대신 요약된 정보가 넘어 옵니다. 

 

OSPF에서 Loop 가 발생하지 않도록 하기위해 2가지 규칙이 존재 합니다. 일부 LSA Type에 Distance Vector 계열의 프로토콜에서 사용하는 Split-Horizon과 같은 기능을 적용하여 Area 사이에서 Loop 가 발생하지 않도록 합니다. 

 

 

  ○ OSPF Loop 방지 규칙 2가지

  1. Non-Backbone은 Intra 경로만 Backbone으로 전달 가능하고, Backbone은 Intra & Inter 경로 정보를 Non-Backbone으로 전달 가능

    → Area에서 다른 Area의 경로를 학습하는 유일한 방법은 Backbone Area를 통해서만 가능 합니다. 해당 규칙은 모든 Non-Backbone Area는 Backbone Area에 연결되어 있어야 정상적인 경로 학습이 가능합니다. 

  2. ABR은 SPF 알고리즘 계산 시 Non-Backbone에게 받은 LSA Type 3은 무시한다. 즉, Backbone Area or Other Area의 네트워크에 접근하기 위해 Non-Backbone Area를 거치지 않는다.

    → Loop를 방지하고 대역폭 낭비를 예방하기 위한 규칙 입니다. 해당 규칙으로 인해 최적 경로대신 비효율적인 경로가 선택 될 수 있습니다.

 

※ 규칙 2 세부 설명

 

ABR3's Subnet 1 네트워크 정보가 OSPF로 광고되고 해당 정보는 Area 1의 ABR1 & ABR2에게 전달 됨. 

 

R2에서 Subnet1로 가기 위해 선택되는 경로는 2번 경로를 통해서 목적지로 도달하게 됨. 

1. R2 → ABR2  ABR1  ABR3 = COST 4 (X)

2. R2 → ABR2  ABR3 = COST 102 (O)

 

ABR1에게 받은 Subnet1에 대한 LSA Type 3 정보를 무시하고 SPF 계산에 포함시키지 않습니다. 다른 Area 도달하기 위해서는 Backbone Area를 반드시 경유해야 합니다. 

 

## 중요 ##
Type 7 ->  Type 5 로 넘기는 건 Backbone Area (Area0) 의 ABR 중 하나만 가능!!!!

넘길때 Forwarding address 는 바뀌지 않음!!


ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

● OSPF NSSA 정의


Stub Area의 특징을 가지고 있고, ASBR이 존재하여 외부 경로를 재분배를 통해 OSPF Domain 내부로 삽입할 수 있는 Area 입니다.

● OSPF NSSA 특징

  • 외부 경로 정보 (LSA Type 5)정보를 받지 않는 Stub 특성을 가지고 있지만 ASBR을 가질 수 있는 특수 AREA.
  • ASBR within NSSA에서 재분배를 수행하게 되면 O N1, O N2의 Route Type으로 라우팅 테이블에 나타남
  • NSSA에서 재분배되는 네트워크 경로 정보는 LSA Type 7으로 전달되며, NSSA ABR이 LSA Type 5로 변경하여 다른 Area로 광고를 수행 함.
  • NSSA ABR 2개 이상 있을 경우 가장 높은 Router-ID를 가진 NSSA ABR이 Type 7 → Type 5 변경을 수행
  • LSA Type 7 헤더에는 P bit (Propagation bit)가 설정되어 있어 NSSA ↔ Backbone 사이 Loop 방지 역할 수행
  • Stub와 달리 Default Route가 자동으로 생성되지 않음. 생성을 위해 ABR에서 추가 명령어 입력이 필요함.
  • NSSA의 기능을 확장 한 Cisco 전용 기술인 Totally NSSA가 있으며 NSSA ABR이 LSA Type 3 ~ 5 정보 Filtering을 수행하고 Default Route를 생성하여 NSSA Neighbor에게 전달


● OSPF NSSA Default Routing 생성 방법

NSSA는 ASBR이 존재하기 때문에 기본적으로 Default 경로 정보를 전달하지 않습니다. 그래서 Default Route 정보를 NSSA OSPF Router에게 전달하기 위해 NSSA ABR은 별도의 명령어를 사용해야 합니다.

NSSA_ABR(router-config)#area area-id nssa default-information-originate


● OSPF Stub & NSSA 비교

Area Type Type 3 Filtering Type 4/5 Filtering Type 7 생성 설정 방법 (OSPF Mode)
Stubby Area No YES NO area area-id stub
Totally Stubby Area YES YES NO area area-id stub no-summary
NSSA NO YES YES area area-id nssa
Totally NSSA YES YES YES area area-id nssa no-summary
 

● OSPF Stub Area & Totally Stub Area 정의

 

LSDB에 저장되는 경로정보를 축소 및 프로세싱 자원을 절약하기 위해 상세한 외부경로 정보대신 Default Gateway 정보를 받아 라우팅 테이블에 내리는 기술이 적용되는 Area를 의미 합니다.

 

● OSPF Stub Area & Totally Stub Area 장점 및 특징

 

장점 - LSDB 크기 및 라우팅 테이블이 감소하여 자원 저장과 계산에 사용되는 리소스를 절약할 수 있습니다.
- 30분 마다 수행하는 LSA Flooding 작업의 부하가 감소 합니다.
특징 Stub Area - ASBR이 수행한 재분배를 통해 학습된 외부경로를 수용하지 않는 Area 입니다. 
- 상세한 외부 정보 대신 Default Route (0.0.0.0/0)을 사용하여 외부와 통신 합니다. 
- Stub Area로 설정되면 ASBR이 존재할 수 없습니다. (ABR = ASBR인 경우 제외)
Totally Stub Area - Cisco 전용 Area Type 입니다. (최근에는 대부분의 Vendor가 지원 합니다.)
- Stub Area의 특징을 가지고 있으며 LSA Type 3  정보도 받지 않는 Area 입니다.
- LSA Type 3 ~5 정보를 받지 않는 대신 Default Route를 사용하여 통신을 수행합니다.

 

● OSPF Stub Area & Totally Stub Area 설정

 

  ○ OSPF Stub Area 설정 이전

R2# show ip route ospf
<Output omitted>

      172.16.0.0/16 is variably subnetted, 4 subnets, 3 masks
O IA     172.16.13.0/30 [110/20] via 172.16.12.1, 00:56:16, Ethernet0/0
O IA     172.16.14.0/25 [110/20] via 172.16.12.1, 00:56:16, Ethernet0/0
O IA  192.168.1.0/24 [110/11] via 172.16.12.1, 00:56:16, Ethernet0/0
O IA  192.168.3.0/24 [110/21] via 172.16.12.1, 00:54:50, Ethernet0/0
O IA  192.168.4.0/24 [110/21] via 172.16.12.1, 00:46:00, Ethernet0/0
O E2  198.51.100.0/24 [110/20] via 172.16.12.1, 00:01:47, Ethernet0/0
O E2  203.0.113.0/24 [110/20] via 172.16.12.1, 00:01:47, Ethernet0/0

 

○ OSPF Stub Area 설정 & 설정 이후 라우팅 테이블

 

R1(config)# router ospf 1
R1(config-router)# area 1 stub
%OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/1 from FULL to DOWN, Neighbor
Down: Adjacency forced to reset

R2(config)# router ospf 1
R2(config-router)# area 1 stub
%OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on Ethernet0/0 from LOADING to FULL, Loading
Done

Stub Area 설정 이후 외부경로 (E2) 정보가 라우팅 테이블에서 사라지고 Default Route 정보만 남아있는 것을 확인 할 수 있습니다. 

R2# show ip route ospf
<Output omitted>

O*IA  0.0.0.0/0 [110/11] via 172.16.12.1, 00:19:27, Ethernet0/0

      172.16.0.0/16 is variably subnetted, 4 subnets, 3 masks
O IA     172.16.13.0/30 [110/20] via 172.16.12.1, 00:19:27, Ethernet0/0
O IA     172.16.14.0/25 [110/20] via 172.16.12.1, 00:19:27, Ethernet0/0
O IA  192.168.1.0/24 [110/11] via 172.16.12.1, 00:19:27, Ethernet0/0
O IA  192.168.3.0/24 [110/21] via 172.16.12.1, 00:19:27, Ethernet0/0
O IA  192.168.4.0/24 [110/21] via 172.16.12.1, 00:19:27, Ethernet0/0

 

  ○ OSPF Totally Stub Area 설정 & 설정 이후 라우팅 테이블

 

Totally Stub 설정은 ABR에서 stub 이후 no-summary 옵션을 넣어주면 totally stub로 동작 합니다.

R1(config)# router ospf 1
R1(config-router)# area 2 stub no-summary
 %OSPF-5-ADJCHG: Process 1, Nbr 3.3.3.3 on Ethernet0/2 from FULL to
DOWN, Neighbor Down: Adjacency forced to reset

R3(config)# router ospf 1
R3(config-router)# area 2 stub
%OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on Ethernet0/0 from LOADING to FULL, Loading Done

 

Totally Stub로 동작하게되면 모든 외부 경로에 대한 상세 정보대신 Default Route로 대체 됩니다. 라우팅 테이블에는 아래와 같이 나타나게 됩니다. 

R3# show ip route ospf
<Output omitted>
Gateway of last resort is 172.16.13.1 to network 0.0.0.0
O*IA  0.0.0.0/0 [110/11] via 172.16.13.1, 00:18:08, Ethernet0/0

 

● OSPF Stub Area & Totally Stub Area Default Cost 값 변경

 

Stub Area 구성 시 Default Route Cost값은 1이며 명령어를 통해서 수정이 가능합니다. Cost값 변경을 통해 Redundent 구성을 할 수 있습니다.  아래 명령어를 통해서 Cost값을 변경할 수 있으며 ABR에서만 설정하면 됩니다.

명령어: Router(config-router)#area area-id default-cost cost

 

가상링크 기술은 개념이해만으로 충분합니다. 실제 사용 사례가 없습니다.


● OSPF Virtual Link 정의

 

 

OSPF Two-Tier Hierarchy 원칙에 따르면 Backbone Area는 연속적으로 구성되어야 합니다. 예외적인 상황에서 Back-bone Area가 분할되어 있을 경우 상호 연결 시켜주는 기술 또는 Backbone Area에 연결되지 않은 Area를 Backbone Area에 연결시키는 기술을 의미 합니다. 

 

● OSPF Virtual Link 특징

  • Virtual Link의 사용은 특수한 목적 달성을 위해 일시적으로 사용해야 합니다. 
  • Virtual Link를 통해 학습한 경로는 DoNotAge(DNA) bit가 활성화 되어있어 LSDB Aging Time이 증가하지 않음
    - LSDB Refresh를 수행하지 않아 해당 경로가 유효하지 않더라도 유지하고 있음
    - 지속적으로 LSDB에 데이터만 누적되기 때문에 자원의 낭비가 발생 함
  • Virtual Link 구성은 일반적인 Non-Backbone Area일 경우에만 설정 할 수 있음
    - Stub/Totally Stub 와 같은 특수 Area에서는 Virtual-Link 설정 불가능
  • Non-Backbone Area 1개를 초과하여 Virtual-Link를 구성 할 수 없음
    - Area 0 ↔ Area 1 ↔ Area 2  → Virtual Link 구성 가능
    - Area 0 ↔ Area 1 ↔ Area 2 ↔ Area 3 → Virtual Link 구성 불가능
  • Virtual-Link 구성 시 Router-ID 정보를 활용 함

 

● OSPF Virtual Link 설정

Router(router-config)#area area-id virtual-link router-id [authentication [message-digest| null]]
[hello-interval seconds] [retransmit-interval seconds] [transmit-
delay seconds] [dead-interval seconds] [[authentication-key
key] | [message-digest-key key-id md5 key]]
area-id Virtual link를 구성하기 위한 Area 정보.  예제에서는 Area 1을 통해 Virtual-Link가 구성 되었음.
router-id Virtual Link Neighbor 관계를 맺을 때 사용하는 정보.
show ip ospf 명령어를 통해서 router-id 정보 획득이 가능함
authentication OSPF Neighbor 관계 수립 시 인증이 있을 경우 상호 정보가 일치해야 함. MD5 & Null 2개가 있음
hello interval Hello Packet 전송 시간. 기본값은 10초. 
retransmit interval LSA 재전송 시간. 기본값 5초
transmit delay LSU 패킷 전송 시간. 기본값 1초.
dead invertal Neighbor Router가 죽었다고 판단하는 시간. 기본적으로 hello interval 4배
authentication-key key 인증에 사용되는 단순 패스워드 인증 방식. 최대 8 글자 사용 가능하며 기본값 없음
message-digest-key key-idmd5 key
인증에 사용되는 MD5 정보. 기본값 없음.

 


출처: https://www.ciscopress.com/articles/article.asp?p=2294214&seqNum=3

 

 

● OSPF Link-State Announcements 정의 및 용어

 

OSPF 도메인내에 있는 다른 라우터들과 멀티캐스트를 통해 상호간에 커뮤니케이션을 할 수 있는 메시지를 LSA라고 합니다. 즉, OSPF 라우터들 간에 LSDB를 동기화 시키는 작업을 수행할 때 사용되는 메시지 입니다.

 

ABR 

정의 2개 이상의 Area에 소속되어 있는 라우터를 ABR (Area Border Router)이라고 합니다. 
특징  Route Summary 및 Route Filtering을 수행 합니다.
  - Area 내부의 LSDB정보는 동일해야 하기 때문에 다른 Area로 네트워크 정보를 넘길 때 해당 작업을 수행 합니다.

※ LSA Type 3 & 4를 생성 합니다. 
  - 다른 Area의 네트워크 정보만 LSA Type 3으로 생성하여 다른 Area로 전달 합니다. 
  - ASBR의 정보가 담긴 LSA Type 4 생성하여 전달 합니다. 
ASBR 정의 OSPF외 다른 Routing Protocol이 동작하는 라우터를 ASBR (Autonomous System Boundary Router)이라고 정의 합니다. 
특징 ※ 다른 Dynamic Routing Procol의 네트워크 정보를 OSPF로 공유할 수 있습니다.
  - Redistribution (재분배)를 통해서 가능하며, LSDB의 External에 저장됩니다.

※ LSA Type 5를 생성 합니다. 
  - 외부 라우팅 정보를 전달하기 위해 LSA Type 5정보가 생성 됩니다. 다른 라우팅 프로토콜이 동작하는 인터페이스를 OSPF 광고에 넣을 경우 Forwarding Address가 생성되며 LSA Type 4정보 대신 LSA Type 5에 설정 된 FA 정보를 사용하여 ASBR을 찾습니다.

 

● OSPF Link-State Announcements Type

 

Type 항목 설명
Type 1 Router LSA 모든 OSPF 라우터가 Type 1의 패킷 생성을 수행하며 LSDB 구성을 위한 가장 필수적인 데이터 입니다.
Type 2 Network LSA DR이 다른 라우터들에게 토폴로지 정보를 전송하는 패킷 입니다
Type 3 Summary LSA ABR에서 발생하는 LSA 이며, 경로 축약 시 사용하는 LSA 입니다.  
Type 4 ASBR Summary LSA ASBR의 Type 5 LSA에는 Next-Hop 정보가 없기 때문에 ABR 장비가 Type 5 LSA를 받아 Next-Hop 정보를 추가하여 다른 Area로 전달 합니다
Type 5 External LSA ASBR에서 재분배 시 발생하는 LSA Type이고, Stub 와 totally Stub Area를 제외한 모든 Area로 LSA를 전달 합니다
Type 7 NSSA External LSA NSSA(Not So Stub Area) 장비에서 재분배된 경로에 대한 LSA 입니다
※ Not So Stubby Area는 Stub의 이점을 가지면서도 재분배도 할 수 있는 OSPF의 특수 Area 

※ LSA Type 7은 NSSA에서 같이 진행 예정 입니다.

 

  1) LSA 메시지 공통 내용

 

항목 설명
LSA Sequences - LSA 전송 지연에 의해 발생할 수 있는 문제를 해결하기 위해 사용 됩니다. 

- Sequence는 32bit로 이며, 라우터가 LSA를 발생 시키면 1씩 증가 합니다 

- 라우터가 자신의 LSDB에 있는 것보다 더 큰 Sequence를 수신한다면 최신 정보라고 판단하고 갱신 작업을 진행하고 작을 경우 해당 LSA를 폐기합니다
LSA Age and Flooding - 모든 OSPF LSA에는 age 값이 들어가는데 해당 값은 local LSDB에 저장되고 1초당 1씩 age 값이 증가합니다. 

- OSPF LSA age값이 1800초 (30분)을 초과 할 경우 age값을 0으로 변경 후 새로운 LSA를 전송합니다. 

- LSA age값이 3600초 (1시간)에 도달할 경우 해당 LSA는 유효하지 않은 것으로 판단하며 LSDB에서 삭제 시킵니다. 

- 반복적인 LSA flooding은 모든 라우터들의 일관성 있는 LSDB를 유지하기 위한 안전 장치 입니다. 
LSA Type - OSPF가 동작하는 모든 라우터들은 자신이 속한 Area 또는 상태에 따라 여러개의 LSA를 전송하는데 LSA의 식별 정보로 사용 됩니다.

 

  2) LSA Type 1 - Router LSA

LSA Type 1 확인 명령어 : show ip ospf database router

 

Type 1 LSA의 전달 범위는 소속 된 Area 범위로 제한되며, 모든 OSPF 라우터가 Type 1 LSA 광고를 수행 합니다.  Type 1 LSA는 LSDB 구성을 위한 필수적인 메시지 이며, OSPF가 활성화된 모든 링크에서 해당 메시지를 전송합니다.

 

Type 1 LSA광고 시 OSPF가 활성화 되어 있는 모든 링크정보를 전달 합니다.  링크 정보는 OSPF동작 여부에 따라 다른 Type 정보를 알려줍니다. 

 

Type ID Connection 설명
1 Neighbor Router's ID  Point-to-Point Connection  - 2대의 라우터만 연결되는 환경, DR 선출이 없기 때문에 transit network가 될 수 없음 

 - single transit-type 에 대한 명세가 없어 이중 기록을 수행하며, P2P의 경우 stub network로 표기 됨
2 DR's IP Address  Connection to Transit Network  - 최소 2개 이상의 라우터가 연결 되어 있는 multiaccess 환경 

 - DR이 선출되는 환경일 경우
3 IP Network/Subnet  Connection to Stub Network  - 단일 라우터로 구성되어 있는 network, 토폴로지에 Gateway 정보만 있는 네트워크

 - 이더넷 환경에서 neighbor 관계를 맺지 않는 정보는 stub network로 간주 함
4 Neighbor Router's ID  Virtual Link  - type 1번 설명과 동일 

 - area 0를 거치지 않고 연결되기 때문에 P2P 환경과 유사함

 

 

  3) LSA Type 2 - Network LSA

 

LSA Type 2 확인 명령어 : show ip ospf database network

Type 2 LSA는 DR이 선출되는 환경인 multi-access network 에서 사용 되며, DR 라우터만 해당 메시지를 전송하며 Type 2 메시지에는 network segment에 연결되어 있는 모든 OSPF Router-ID가 포함되어 있습니다. 

DR을 선출하지 않는 OSPF Network Type의 경우 (Point-to-Point 와 같은) stub network로 간주하여 LSDB에 저장이 됩니다.  

 

  4) LSA Type 3 - Summary LSA

LSA Type 3 확인 명령어 : show ip ospf database summary

Type 3 LSA는 다른 area로 부터 넘어온 network를 위해 사용 됩니다. 복수개의 Area에 속해 있는 ABR 장비가 해당 메시지를 생성합니다. ABR은 Type 1과 Type 2 메시지를 다른 Area로 전달하지 않고 가공하여 사용 합니다. 


ABR이 Type 1 LSA 메시지를 수신하면 메시지에 포함된 네트워크 정보를 참조하여 Type 3 LSA를 생성하며, Type 2 LSA 메시지 수신 시 multi-access network의 network mask를 결정하는데 이용합니다.

 

 

  5) LSA Type 4 - ASBR Summary LSA

 

LSA Type 4 & 5는 재분배 과정에서 사용하게 되는 LSA Type 이며, LSA Type 4는 ASBR에 대한 정보를 담고 있는 메시지 입니다. ASBR은 LSA Type 1에 E (external) bit를 설정해서 광고하고 해당 정보를 통해 Area에 ASBR이 있다는 것을 인지하게 됩니다. ASBR과 같은 Area에 있는 라우터들은 LSA Type 1정보를 이용하여 ASBR을 찾아 갈 수 있지만 다른 Area에 있는 라우터들은 ASBR에 대한 정보를 알 수 없습니다. (LSA Type 5에는 외부 네트워크에 대한 정보만 존재하며 ASBR에 대한 정보는 없음)

 

ABR에서 ASBR의 Router-ID 정보가 포함 된 Type 4 LSA를 생성하여 다른 Area로 전달합니다. 다른 Area로 다시 전달 될 때 ABR은 LSA Type 4를 재생산 (Regenearte)하여 전달합니다. Regenerate라는 용어를 사용하는 것은 ASBR까지 도달하기 위한 매개변수값을 재계산하여 전달하기 때문 입니다.

 

 

  6) LSA Type 5 - External LSA

 

LSA Type 5는 ASBR이 생성하고 OSPF 외부 네트워크 설명에 사용됩니다. 재분배하는 네트워크 정보만 포함되어 있기 때문에 ASBR 정보를 알리기 위해 LSA Type 4를 사용 합니다. 

 

OSPF가 재분배를 통해 외부 네트워크 정보를 가져올 때 E1, E2 2개의 Type이 존재하며 E1이 E2보다 우선순위가 높아 ASBR이 2개 일 경우 Active / Backup을 구성하기 위해 E1, E2를 혼합하여 사용하기도 합니다. 

 

E1 - 외부 네트워크 경로 정보이며 COST값은 가변적 입니다. 
- ASBR까지 Cost값을 추가하여 사용 합니다. 
E2 - 외부 네트워크 경로 정보이며 COST값은 고정적으로 20의 값을 가집니다.
- E2로 광고하는 ASBR이 다수 존재할 경우 가장 가까운 ASBR을 선택하여 트래픽을 전송 합니다.

 

Type 5는 ASBR의 정보를 전달 할 수 없으나, Forwarding Address를 사용하면 ASBR의 정보를 전달 할 수 있어 Type 4의 정보는 필요가 없다. (그래도 자동으로 생성된다.) Forwarding Address는 다른 라우팅 프로토콜이 동작하는 인터페이스를 OSPF로 광고하면 LSA Type 5에 Forwarding Address가 설정되어 전달 됩니다. Forwarding Address에 대한 정보가 LSA Type 3으로 다른 Area로 광고되며 OSPF Router들은 LSA Type 4가 없더라도 ASBR의 정보를 알 수 있습니다. 1)

 

 

  7) LSA Type 4 & 5 LSA Type 도식화

 

  • R3 (ASBR)이 외부 경로 정보를 OSPF External LSDB에 저장
  • R3의 LSA Type 1에 E bit (External Bit) 설정하여 전달. R2는 Area 1에 ASBR 존재를 인식 함
  • R3 (ASBR)이 재분배한 외부 네트워크 정보가 Type 5로 다른 Area로 전달 됨. E1, E2 External Type 결정
  • R2 (ABR)가 ASBR의 정보가 있는 Type 4를 생성하여 전달. R1은 ASBR까지 도달하기 위한 Cost값 재계산 후 LSA Type 4 정보를 다른 Area로 전달

1) Forwarding Address가 없으면 0.0.0.0으로 설정 됩니다. 

 

● OSPF Route Filtering 정의

 

Route Filter 기술은 Neighbor에게 경로정보를 송신 또는 수신 할 때 선택적으로 수행하는 기술 입니다. 해당 기술은 트래픽의 흐름 변경, 메모리 사용율 절감 및 보안성 강화의 목적으로 사용 됩니다.

 

OSPF는 동일 Area 안에 있는 라우터는 동일한 LSDB를 공유하기 때문에 Filtering을 수행하는 위치는 경로가 유입되는 ABR 이고, filtering의 결과는 중첩 됩니다. 

 

 OSPF Route Filtering 수행 방법


  1) not-advertise keyword 사용
    
경로 축약 수행 시 not-advertise 키워드를 사용하여 특정 경로 정보를 광고에서 제외 (LSA Type 1 →  LSA Type 3으로 변환 제외) 하는 방법 입니다. 다른 Area로 넘어가지 않고 해당 경로를 광고한 Local Area에서만 경로정보가 광고 됩니다.

 

not-advertise 명령어를 사용하기 위한 전체 구조 입니다. 

router(config-router)#area area-id range network subnetmask not-advertise

 

not-advertise 를 이용한 경로 filtering 수행 방법


R1에서 3개의 네트워크 대역을 광고하고 R2는 Area 12에서 발생되는 LSA Type 1 정보를 필터링하여 Area 0에게 전달 할 수 있습니다

 

 

R2에서 특정 네트워크 대역에 대해 not-advertise keyword를 추가하여 광고에서 제외 하였습니다. R3에서 라우팅 테이블을 확인해보면 172.16.2.0/24 대역이 사라진것을 확인 할 수 있습니다.

 

 

 

  2) Area Filtering (Using prefix-list & filter-list)

 

경로 축약시 not-advertise 키워드를 사용하면 쉽게 filtering이 가능하지만 다른 Area에서 들어온 경로 정보는 not-keyword 사용이 불가능합니다. 

 

172.16.1.0/24 네트워크가 Area 0에서는 필요하지만 Area 34에서는 필요하지 않을 경우 기존의 경로축약 방법에서는 해당 경로를 제외하고 광고할 수 있는 방법이 없습니다. 

 

ABR에서 LSA Type 3을 filering 하여 다른 Area로 특정 대역에 대한 정보전달을 제어할 수 있습니다. 이를 Area filtering 이라고 부릅니다.  

 

 

area filtering 수행하기 위한 위한 전체 명령어 구조 이며, filter-list를 사용합니다.

router(config-router)#area area-id filter-list prefix prefix-list-name {in | out}

 

  • R1은 172.16.1.0/24, 172.16.2.0/24, 172.16.3.0/24 3개의 Network 대역을 OSPF를 통해 광고
  • R2는 172.16.1.0/24 Network가 불필요 (Area 12의 정보가 Area 0에 들어올 때 특정 대역 제거, 방향성 in)
  • R3은 172.16.2.0/24 Network가 불필요 (Area 0의 정보가 Area 34로 내보낼 때 특정 대역 제거, 방향성 out)

 

Area filtering 설정 이후 라우팅 테이블을 확인 해 보면, Area 0에 속해있는 장비 R2 & R3 에서는 172.16.1.0/24 대역이 사라진 것을 확인 할 수 있으며, Area 34에 속해 있는 장비 R4에서는 172.16.2.0/24 대역이 사라진 것을 확인 할 수 있습니다.

 

 

 

  3) Local OSPF Filtering (Using access-list & distribute-list)

 

OSPF는 Link State Protocol로 동일한 Area에 속해 있는 장비는 모두 동일한 LSDB를 공유합니다. 하지만 특별한 사유에 의해서 특정 경로만 라우팅 테이블에서 제외가 필요할 경우 distribute-list를 사용하여 제외 시킬 수 있습니다.

 

OSPF Process 아래에서 distribute-list를 이용하면 LSDB에는 Neighbor로 부터 수신한 경로 정보가 존재하나 Local Routing Table에서만 경로정보가 삭제 됩니다.  

 

router(config-router)#distribute-list {acl-number | acl-name | prefix prefix-list-name | route-map route-map-name} in

 

 

distribute-list의 영향은 local routing table로 한정되고 neighbor에게 영향을 미치지 않습니다. 주의해야 할 점은 distribute-list와 filter-list를 같이 사용하면 안됩니다.

 

 

라우팅 테이블을 확인해 보면 R2에서는 172.16.3.0/24 대역은 라우팅 테이블에서 보이지 않지만 R3에서는 해당 대역이 라우팅 테이블에 존재하는 것을 확인 할 수 있습니다.

 

 

● OSPF Route Summarization 정의

 

다수의 네트워크 경로를 하나로 통합하여 다른 Area로 전달하는 행위를 경로 축약이라고 하며, 경로 축약을 수행하는 위치는 ABR 입니다.  

 

 

● OSPF Route Summarization 특징

  • LSDB의 전체적인 크기 감소
    A Class (10.0.0.1 ~ 10.255.255.254) 까지의 라우팅 정보를 10.0.0.0/8 경로로 축약하여 1600만개의 라우팅 정보가 1개로 감소
  • SPF 계산 시간 감소
    다른 Area에서 발생한 Link 장애로 인해 OSPF 경로 정보가 변경되면 ABR은 Type 3 정보를 이용하여 변경 된 경로정보 업데이트를 수행 해야하나, 축약을 하면 별도의 업데이트가 불필요함
  • Area 기준 경로축약 수행
    ABR에서 경로 축약을 수행하며, 축약의 기준은 Area 입니다. (Area 3의 정보를 축약하여 Area 0에게 전달) ABR이 Type 1 데이터를 수신하면 이를 Type 3으로 변경하여 다른 Area 에게 전달 합니다.
  • 축약 경로 Metric
    축약 경로의 Metric 값은 축약 범위에 있는 메트릭 중 최소 Metric 값으로 지정 됩니다. 최소 Metric 값을 갖는 Link에 장애가 발생한다면 그 다음으로 낮은 Metric값이 선정되어 Type 3 LSA가 광고 됩니다. 

 

● OSPF Route Summarization 방법

 

R1 ~ R5 라우터별 IP 및 설정 및 Loopback IP 설정 후 OSPF 동작. R5에서 라우팅 테이블을 확인

 

ABR 장비인 R4에서 Area 1의 경로정보를 축약하여 Area 0에게 전달

 

R4(config)#rotuer ospf 1
R4(config-router)#area 1 range 10.0.0.0 255.255.0.0 [advertise, cost, non-advertise]

 

R1이 가지고 있는 IP로 정상적으로 통신이 되는 것을 확인 할 수 있으며, 경로 축약 수행 시 축약된 경로의 cost는 축약에 포함된 네트워크 경로중 가장 낮은 cost값을 가져가는 것을 확인 할 수 있습니다.

● OSPF Route Advertisement 방법

 

OSPF를 설정하는 방법은 OSPF Process 아래에서 설정하는 방법과 세부적인 옵션을 적용하기 위하여 인터페이스에서 OSPF를 설정하는 2가지 방법이 존재합니다.

 

  1) 명시적인 IP 주소 선언

 

OSPF를 활성화 시킬 인터페이스의 IP만 정확하게 지정하여 설정하는 방법

 

router#config termial
router(config)#router ospf 1
router(config-router)#network 10.0.21.1 0.0.0.0 area 0

 

 

  2) 명시적인 서브넷 선언

 

인터페이스에 명시된 서브넷 마스크를 와일드카드 마스크로 변경하여 입력

 

router#config termial
router(config)#router ospf 1
router(config-router)#network 10.0.21.0 0.0.0.255 area 0

 

  3) 서브넷  범위를 지정하여 선언

 

인터페이스의 IP를 모두 포함하는 서브넷을 지정하여 설정

 

router#config termial
router(config)#router ospf 1
router(config-router)#network 10.0.0.0 0.192.255.255 area 0

 

  4) 모든 인터페이스를 OSPF로 설정

 

라우터의 모든 인터페이스에 OSPF를 활성화 시키는 방법

 

router#config termial
router(config)#router ospf 1
router(config-router)#network 0.0.0.0 0.0.0.0 area 0

 

  5) 인터페이스에서 OSPF로 설정

 

OSPF 설정이 명확하게 드러나는 장점이 있으나 설정이 중앙화 되어  있지 못해 놜이의 어려움과 복잡함이 증가함

 

router#config termial
router(config)#interface gi0/0
router(config-router)#ip ospf 1 area 0

 

 

  6) OSPF Default Route 광고

 

OSPF 도메인 내부에 Defualt Route 정보 광고를 수행합니다. 기존 라우팅 테이블에 Default Route가 없을 경우 always 옵션을 추가하면 OSPF가 Default Route 경로를 생성하여 도메인 내부로 광고합니다.

 

router#config termial
router(config)#router ospf 1
router(config-router)#default-infomation originate [always] [metric-value] [metric-type]

 

 

  7) OSPF Passive-Interface

 

Passive Interface로 설정 시 Hello Pakcet을 전송하지 않으며 결론적으로 Neighbor 관계를 맺을 수 없습니다. Passive로 설정 된 인터페이스의 Connect는 Stube로 표기됩니다. 

 

Router(config)#router ospf 1
Router(Config-Router)# passive interface gix/x   (특정 인터페이스만 Passive로 전환)
Router(Config-Router)# passive interface default (모든 인터페이스를 Passive로 전환

● OSPF Area 정의

 

OSPF의 Area는 라우터들의 논리적인 집합을 의미 하며, 인터페이스들의 논리적인 집합 입니다. Area의 설정은 인터페이스 단위로 설정 합니다.

 

 

● OSPF Area 특징

  • OSPF AREA 정보는 OSPF Hello Packet에 포함되어 전달되며 Area 정보가 서로 다를 경우 Neighbor 관계를 맺지 못함
  • Interface는 오직 하나의 Area에만 할당 가능, Area를 기준으로 LSDB를 생성 / 관리 
  • 2개 이상의 Area와 인접한 라우터를 ABR (Area Border Router)라고 하며, 네트워크 경로 축약을 수행 함
  • 서로 다른 Area와 통신을 하기 위해 Area 0를 통해서만 통신이 가능
  • Area ID설정은 Simple Decimal 또는 Dotted Decimal로 설정 가능. Area 설정 시 어느방법을 사용해도 무관하나 인접 장비의 Area 설정 방법은 동일해야 함. OSPF Hello Packet에 포함된 정보는 Dotted Decimal로 표기 됨

 

● OSPF 계층적 Area 디자인과 용어

 

용어 설명
Backbone Area
Transit Area (Area 0)
- OSPF에 핵심이 되는 Area이며 Non-Backbone Area는 Backbone Area에 연결되어야만 네트워크 정보가 상호간에 교환 됩니다.
- Backbone Area는 연속성있게 연결되어 있어야 하며 중간에 끊어지면 안됩니다.
Non-Backbone Area - Backbone Area외 모든 Area를 의미 합니다. 
- 서로 다른 Non-Backbone Area 사이 트래픽은 Backbone Area를 통해 전달 됩니다.
ABR - Area 0를 포함하여 최소 2개 이상의 Area에 소속되어 있는 라우터를 의미 합니다.
- LSDB는 Area 단위로 생성하며, Area 단위로 경로 계산을 수행 합니다. 
- Area 사이에서 네트워크 정보를 광고합니다. (LSA Type 3)
ASBR - OSPF와 다른 Dynamic Routing Procol이 동시에 동작하는 라우터 입니다.
- 재분배를 통해 외부 네트워크 정보를 OSPF로 가져올 수 있습니다.
Internal Router - 모든 인터페이스가 1개의 Area에 속해있는 라우터 입니다. 
Backbone Router - 최소 1개 이상의 인터페이스가 Area 0에 포함되어 있는 라우터 입니다.

 

● OSPF Area 디자인에 따른 장점과 단점

 

단일 Area 정의 Area 0만으로 구성된 OSPF Design
장점 º 단일 Area 사용으로 토폴로지 구성이 단순함
단점 º Area 내부에서 링크 Up/Down이 발생할 경우 SFP 계산이 발생 하며 LSDB 업데이트 패킷이 다수 발생
º LSDB의 크기가 커져 관리 가능한 범주를 넘어설 수 있음
º LSDB 크기가 커질 수록 더 많은 메모리를 소모하며 SPF 계산이 지연 될 수 있음
º 경로 축약이 불가능 (OSPF의 경로축약은 ABR에서 수행)
다중 Area 정의 Area 0와 추가적인 Area로 구성된 OSPF Design
장점 º 계층적 Area 관리를 통한 LSDB 사이즈 감소 
º 경로 축약을 통해 라우팅 테이블 크기 감소 
º 다른 Area에서 발생한 네트워크 문제가 다른 Area로 전파되지 않음
단점 º Area 0를 거치지 않을 경우 다른 Area 간 통신 불가 
º 잘못된 경로 축약 수행 시 패킷 유실 발생

※ 단일 Area에 포함 시킬 수 있는 라우터의 수량은 네트워크 안정성과 같은 요소에 따라 다르지만 일반적으로 권고하는 수량은 50개 미만.

 

● OSPF Route Type (via OSPF Area)

 

OSPF 네트워크 경로에는 학습 방식과 학습 위치에 따라 Route Type이 존재 하며, Route Type에도 우선순위가 존재 합니다.  (경로의 우선순위는 O > O IA > O E1 > O E2 순서)

 

분류 설명
O 현재 라우터가 속한 Area에서 경로를 학습한 경우 intra-area routes 라고 하며 OSPF 라우팅 테이블에서의 표기는 O 입니다.
O IA ABR(Area Boder Router)를 통해 경로를 학습한 경우 interarea route라고 하며 OSPF 라우팅 테이블에서의 표기는 O IA 입니다
O E1 재분배(Redistribution)을 통해 학습한 경로를 의미하며, Interface Cost값이 OSPF 정보에 누적 됩니다
O E2 재분배(Redistribution)을 통해 학습한 경로를 의미하며, 기본적으로 Cost값은 20을 가지며 해당 값은 변경되지 않습니다.

 

'1-1. Routing > -- OSPF' 카테고리의 다른 글

⑧ OSPF Route Summarization  (0) 2022.08.04
⑦ OSPF Route Advertisement 방법  (0) 2022.08.04
⑤ OSPF DR / BDR 란?  (0) 2022.08.04
④ OSPF Network Type 이란?  (0) 2022.08.04
③ OSPF Neighbor 종류 와 상태  (0) 2022.08.04

 Designated Router and Backup Designated Router (DR / BDR) 정의 및 역할

 

Lan과 같은 multi-access 환경에서는 하나의 network segment에 2대 이상의 라우터가 존재 할 수 있습니다. 이러한 환경에서 OSPF Database를 관리하고 변동 사항을 전체 OSPF 도메인 에게 전달 하는 역할을 담당하는 것이 DR이며, DR에 장애가 발생할 경우 BDR이 DR로 전환 됩니다.

DR/BDR은 전체 네트워크 토폴로지를 관리하기 때문에 많은 자원을 소모하기 때문에 규모가 큰 네트워크를 구성한다면 성능 부분을 고려해야 합니다.

 

 

 Designated Router and Backup Designated Router (DR / BDR) 필요성

  • Lan Segment 환경에서 라우터의 증가에 따른 확장성 문제를 관리함
  • OSPF Adjacency Neighbor 사이 LSA Packet 교환 트래픽을 관리함

Broadcast Network Type에서 DR / BDR을 선출하지 않는다면 논리적인 구성은 Full-Mesh 형태가 되며 OSPF 경로 정보를 갱신하기 위해 Segment 단위로 Adjacency Neighbor가 필요 합니다. 

 

라우터가 4대 일 경우 필요한 Adjacency Neighbor의 수량은 6이며, OSPF에 참여하는 라우터가 5대일 경우 필요한 Adjacency Neighbor의 수량은 10개가 됩니다. 또한 Adjacency Neighbor는 LSDB를 동기화 하기 때문에 OSPF LSA 트래픽이 과도하게 발생하고, OSPF 동기화 유지, 경로 계산 및 Neighbor 관계 유지에 많은 자원이 소요 되기 때문에, DR / BDR을 선출하여 LSDB를 관리, 유지 및 공유하는 것이 효율이 높습니다.  

 

 

 Designated Router and Backup Designated Router (DR / BDR) 특징

 

 

  • 가상 노드(pseudo-node)를 생성하고 broadcast network segment에 있는 전체 라우터의 adjacency 상태를 관리 합니다.
  • DR에 장애가 발생하게 되면 BDR이 DR 역할을 수행하고 DROTHER 중에서 새롭게 BDR을 선출 합니다. 
  • Interface Priority가 0일 경우 DR로 선출 될 수 없으며, DR의 Priority가 0이 되면 즉시 DR / BDR 선출과정을 진행 합니다.

 

 Designated Router and Backup Designated Router (DR / BDR) 선출 절차

 

  1. 선출 과정은 OSPF Hello Packet을 이용하여 선출을 수행하게 되며 2-Way 단계에서 선출여부를 결정하게 되고, DR / BDR의 선출하는 경우 ExStart 단계로 넘어갑니다.
  2. DR의 선출은 네트워크 세그먼트 단위로 선출되기 때문에 Interface Priority 값이 가장 높은 라우터가 DR이 됩니다. 
    (기본값 1, 1 ~ 255 까지 설정 가능)
  3. Interface Priority 값이 동일할 경우 더 높은 Router ID를 가진 라우터가 DR로 선출 됩니다. 
  4. DR 선출 완료 후 BDR을 선출하게 되며 선출과정은 DR과 동일하고, 해당 과정에 DR은 참여하지 않습니다.
  5. 선출 완료 후 신규장비가 추가 되더라도 DR / BDR 선출과정은 다시 수행되지 않습니다. 

 Designated Router and Backup Designated Router (DR / BDR) 동작 방식

 

 

단계 설명
STEP 1 Network Segment에 있는 모든 OSPF 라우터들은 (DR / BDR / DROTHER) DR과 BDR하고만 Adjacency Neighbor 관계를 수립합니다. 자신의 정보를 DR과 BDR에게 멀티캐스트 주소 224.0.0.6을 이용하여 전달 합니다. 
STEP 2 DR은 Unicast를 이용하여 정보를 전달한 라우터에게 Ack packet을 전달 합니다.
STEP 3 DR은 Network Segment에 존재하는 모든 OSPF 라우터들에게 멀티캐스트 224.0.0.5 주소를 이용하여 LSA Packet을 전달하여 LSDB 정보를 갱신 합니다.
 

● OSPF Network Type 이란?

 OSPF network types은 RFC 2328: OSPF Version 2에 정의되어 있습니다. Adjacency Neighbor와 연결 되는 Network Design에 따라 OSPF Network Type 결정이 됩니다. 또한 OSPF Network Type은 Media Type과 Layer 2 Protocol과 Encapsulation에 따라 영향을 받습니다.

 

 

 OSPF Network Type - Point-to-Point

Point-to-Point Network Type은 가장 간단하게 구현할 수 있는 OSPF Network Type 입니다. OSPF를 구성하는 네트워크 장비가 직접적으로 연결된 형태이며 DR/BDR을 선출하지 않기 때문에 Adjacency Neighbor를 맺는 시간이 Broadcast 보다 짧습니다. 

 

 

 OSPF Network Type - Broadcast

Multiaccess 환경에서 다수의 장비를 연결하여 사용하는 환경에서 Boradcast Network Type을 지원 합니다. Broadcast Network Type은 OSPF Database를 관리하기 위해 DR / BDR을 선출하고, Segment에 존재하는 Neighbor를 개별적으로 선출하는 것이 아니라 한번의 프로세스를 통해 선출 합니다.

 

 

 OSPF Network Type - Non-Broadcast & Non-Broadcast MultiAccess

Multiaccess 환경에서 broadcast를 지원하지 못하는 Frame-Relay나 ATM과 같은 기술을 사용할 경우 입니다. OSPF는 해당 환경에서 Non-Broadcast Multi-Access (NBMA) 또는 Point-to-Multipoint 타입으로 사용할 수 있습니다. 

 

Non-Broadcast MultiAccess의 Segment는 Broadcast Network Type과 동일하게 DR/BDR을 선출하지만, Neighbor를 수동 지정 및 Hello, Dead Time-Interval의 시간 차이도 존재 합니다.

 

 

 OSPF Network Type - Point-to-MultiPoint

 

Non-Broadcast Network Type의 형태의 Design과 동일하며, Hub-and-Spoke 형태의 Network Topology를 구성할 때 사용 할 수 있는 Network Type 입니다. 해당 Type을 기본값으로 사용하는 Layer 2 Protocol or Encapsulation은 없으며 관리자의 지정으로 사용하는 Network Type 입니다. 

 

 

 OSPF Network Type - 요약

 

https://www.oreilly.com/library/view/cisco-ios-cookbook/0596527225/ch08s15.html

● OSPF Neighbor 종류

 

OSPF Hello Packet을 이용하여 Neighbor 관계를 수립하더라도 조건에 따라 2가지 타입의 OSPF Neighbor가 있습니다. 

 

타입 설명
OSPF Neighbor OSPF가 활성화된 인터페이스를 통해 맺어진 관계
Adjacency OSPF Neighbor OSPF Database를 동기화 시키는 관계

 

  ○ Adjacency OSPF Neighbor 성립 조건

 

  1. OSPF가 동작하는 영역내에서 Router ID는 유일해야 합니다 
    (중복된 Router ID가 있을 경우 LSDB가 계속 업데이트 되어 Routing Table이 계속 변함, 즉 불안정한 상태)
  2. 두 장비의 인터페이스의 IP Subnet은 동일한 대역에 존재해야 합니다. 
  3. OSPF는 단편화를 지원하지 않기 때문에 MTU 사이즈가 동일해야 합니다
  4. Area 정보가 동일해야 합니다.
  5. DR / BDR 활성화 및 비활성화 조건이 동일해야 합니다. (OSPF Network Type이 다를 경우 Neighbor 관계가 되지 못합니다.)
  6. OSPF Hello / Dead Timer가 동일해야 합니다
  7. 인증 타입이 동일해야 합니다. (MD5, Text, NONE)
  8. Area Type이 동일해야 합니다. (Stub or NSSA)

 

● OSPF Neighbor 선출 과정 및 상태

 

 

OSPF Neighbor를 맺는 과정 입니다. Adjacency Neighbor (DR/BDR)일 경우와 일반적인 OSPF Neighbor (DROTHER)인 경우 Neighbor 정보를 확인해 보면 상태가 다르게 표기 됩니다.   

상태 설명
Down Neighbor 관계 수립 최초의 단계이며 hello packet을 수신하지 않은 상태 입니다.
Attempt NBMA(Non Broadcast Multi Access) 와 관계가 있으며 OSPF 설정 시 neighbor를 수동으로 지정해 주어야 합니다. 해당 상태는 받은 정보는 없지만 라우터가 계속 통신을 시도하는 경우에 발생 합니다.
Init 다른 라우터에게 hello packet을 수신하였으나 아직 양방향 통신은 되지 않은 상태를 의미 합니다.
2-Way 양방향 통신이 되는 상태이고, DR / BDR 선출이 필요할 경우 해당 단계에서 선출 됩니다.
DROTHER일 경우 해당 상태가 최종 단계입니다.
ExStart adjacency 관계를 맺는 첫번째 단계입니다. 라우터는 LSDB 동기화를 위해 primary 또는 secondary를 식별 합니다. 
ExChange DBD 패킷을 이용하여 LSDB 전체 정보를 교환 합니다. Link-State Type, Address of Advertising Router, Link's Cost, Sequence Number 정보가 포함 됩니다. OSPF는 Sequence Number 정보를 이용하여 해당 정보의 최신화 여부를 확인 합니다. 
Loading LSR 패킷을 neighbor에게 전달하고 가장 최신의 LSU로 응답하여 LSDB 동기화 작업을 수행 합니다.
Full adjacency neighbor 관계 수립이 완료 된 상태 입니다.

 

DR과 BDR을 선출 뒤, Database Description Packet을 통해 LSDB를 동기화를 수행 후 Neighbor 상태는 Full 입니다. LSDB를 동기화 시키지 않는 Neighbor ( DROTHER)의 상태는 2-WAY상태가 됩니다

 

 

'1-1. Routing > -- OSPF' 카테고리의 다른 글

⑤ OSPF DR / BDR 란?  (0) 2022.08.04
④ OSPF Network Type 이란?  (0) 2022.08.04
② OSPF Packet Type (Hello, DBD, LS R/U/A)  (0) 2022.08.04
① OSPF Routing Protocol - 정의 및 특징  (0) 2022.08.04
OSPF 네이버 성립 조건 #  (0) 2022.04.14

● OSPF Packet Type란?

 

OSPF가 동작하는 라우터의 LSDB 정보를 요청 및 갱신을 수행하고 OSPF가 동작하는 라우터를 식별하기 위해 사용하는 Packet을 의미하며 5가지 종류가 있습니다. 또한 해당 패킷을 교환하기 위해 멀티캐스트 주소를 사용 합니다.

 

● OSPF Packet 교환 주소

 

구분 멀티캐스트 주소 설명
All Router 224.0.0.5 OSPF가 동작하는 모든 라우터가 해당 주소를 이용하여 정보를 수신 합니다
DR/BDR Router 224.0.0.6 DR/BDR 라우터들이 해당 주소를 이용하여 통신 합니다.

 

● OSPF Packet Type 소개

 

관계 수립 및 정보 교환을 위하여 사용하는 Packet의 유형은 5가지 입니다.

타입 이름 설명
1 Hello - Neighbor 발견 및 유지에 사용되는 패킷
- 주기적으로 Hello Packet을 전송하며 OSPF가 활성화된 모든 인터페이스로 전송
2 Database Description
(DBD or DDP)
- database 요약 정보를 전송하는 패킷
- adjacency neighbor를 최초 구성할 때 교환
3 Link-State Request (LSR) - database를 요청하는 packet (For Database Download)
- DBD packet을 교환하여 LSDB 정보 갱신이 필요할 경우 neighbor에게 요청
4 Link-State Update (LSU) - database 갱신에 사용되는 packet (For Database Update)
- LSR을 수신한 라우터가 네트워크 링크 정보를 담아 회신하는 packet
5 Link-State Ack - LSA(Link-State Advertisement)에 대한 응답으로 사용 됨 
- 전송의 신뢰성을 보장

 

 

  ○ OSPF Hello Packet 소개

 

OSPF Hello Packet은 neighbor와의 관계유지 및 발견을 수행 하는 packet 이며, OSPF가 동작하는 네트워크 장비의 모든 인터페이스로 Hello Packet을 전송하며 멀티캐스트 주소 224.0.0.5를 사용 합니다.

 

데이터 필드 설명
Router ID(RID) OSPF 도메인 영역내에서 유일한 32bit ID 입니다. (IP 주소)
* 중복된 RID가 존재할 경우 OSPF가 불안정해 집니다.
Authentication option OSPF neighbor 수립 시 추가적인 보안 설정이며 none, clear text, MD5 3가지 인증이 있습니다.
Area ID OSPF 인터페이스가 속한 Area 정보 입니다. 
Interface address mask Hello Packet을 전송하는 인터페이스의 Network Mask 정보 입니다.
interface priority DR 선출에 사용되는 우선순위 값 입니다.
hello interval hello packet을 전송하는 주기 입니다.
dead interval hello packet 수신 후 다음 hello packet을 받기 까지의 주기 입니다.
해당 시간 이내에 hello packet이 오지 않는다면 neighbor down으로 간주 합니다. 
DR & BDR DR & BDR의 IP 주소 입니다
active neighbor network segment에서 보여지는 neighbor 목록 입니다. 
 

'1-1. Routing > -- OSPF' 카테고리의 다른 글

⑤ OSPF DR / BDR 란?  (0) 2022.08.04
④ OSPF Network Type 이란?  (0) 2022.08.04
③ OSPF Neighbor 종류 와 상태  (0) 2022.08.04
① OSPF Routing Protocol - 정의 및 특징  (0) 2022.08.04
OSPF 네이버 성립 조건 #  (0) 2022.04.14

 

● OSPF Routing Protocol 정의

 

IP 네트워크를 위한 링크 스테이트 라우팅 프로토콜 입니다. 링크 스테이트 라우팅 알고리즘을 사용하며, 하나의 자율 시스템(AS)에서 동작하면서 내부 라우팅 프로토콜의 그룹에 도달한다. IPv4의 경우 RFC 2328 (1998년)의 OSPF 버전 2로 정의되어 있다. IPv6를 위한 업데이트는 RFC 5340 (2008년)의 OSPF 버전 3에 정의되어 있습니다. - from wiki -

 

 OSPF Routing Protocol 특징

 

  1) Dijkstra shortest path first(SPF) algorithm 사용

목적지 까지 도달하기 위한 최단 경로를 계산하기 위한 알고리즘이며, 목적지로 향하는 동일한 메트릭 경로가 존재할경우 ECMP(Equal-Cost Multi Paht)를 지원합니다. 또한 각각의 라우터는 자기 스스로를 SPF Tree의 최상위 Node라고 인식하여 OSPF에 참여하는 네트워크로 도달하기 위한 경로를 계산합니다. 

SPF (Shortest Path First) Tree 구조

 

  2) 네트워크 토폴로지 전체 경로정보 인지 

OSPF에 참여하는 모든 라우터는 LSA를 이용하여 전체 네트워크 토폴로지 정보를 수집하고 네트워크 맵을 구상 합니다. LSA를 이용하여 LSDB를 구성하여 모든 네트워크 정보를 학습 합니다. 모든 라우터가 동일한 LSDB를 가지며 이는 동일한 Area에 속한 라우터에 한해 유효하며 서로 다른 Area에 속할 경우 서로 다른 LSDB를 갖게 됩니다.  

 


  3) DR / BDR 선출  

OSPF 라우터간 DR(Designated Router) 및 BDR(Backup Designated Router)를 선출하여 OSPF 경로 추가 / 변경 / 제거와 같은 이벤트가 발생했을 경우 다른 라우터들에게 전달하는 역할을 수행 합니다. OSPF 라우터 간에 통신을 위해서는 224.0.0.5 & 224.0.0.6 2개의 멀티캐스트 주소를 사용합니다. 

 

Multi-Access 환경에서 DR / BDR 선출 하며, Network Type이 Broadcast & NBMA일 경우 입니다.

 
  4) 계층적 아키텍처 

OSPF는 Two-Tier 계층적 아키텍처 이며 Area 개념을 사용하여 아키텍처를 실현 합니다. Area 0라는 특별한 Area를 사용하며 흔히 backbone이라고 하기도 합니다. Area 0 가 아닌 Area는 non-backbone area라고 하며 무조건 Area 0에 연결되어야 합니다. backbone area가 non-backbone area의 경로정보를 수신한 뒤 다른 non-backbone area에게 경로 정보를 전달 합니다.

 

 

Area 12에 속해있는 장비 R1은 다른 Area의 변화에 영향을 받지 않습니다. Area 34에서 링크의 추가 또는 메트릭의 변화와 무관합니다. Area 개념을 통한 계층적 관리로 인해 토폴로지 변화에 대한 트래픽 전달 범위를 감소 시키고 불필요한 리소스 사용을 최소화 합니다. 

 

 

  5) LSA Type 및 Network Type 

LSA(Link State Advertisement)는 Link 상태와 메트릭 값을 포함하고 있으며 LSA Type 1 부터 Type 7 까지 존재하며 OSPF 라우터의 조건에 따라 발생 시키는 LSA Type이 다릅니다. 또한 OSPF의 Network Type은 데이터링크 계층의 프로토콜에 따라 정해져 있습니다. (예, 이더넷일 경우 Broadcast이며 Serial일 경우 Point-to-Point) 

LSA Type은 실제로는 11까지 존재하지만 가장 많이 사용하는 LSA Type은 1 ~ 5 까지 입니다. Type 7은 NSSA (Not So Stubby Area)일 경우 사용합니다. 다른 LSA Type은 특수 목적용으로 예약되어 있으며, LSA Type 8 ~9는 OSPFv3으로 사용 됩니다. 

  6) OSPF Process 

라우터에는 다수의 OSPF가 동작할 수 있으며 OSPF Process마다 고유한 데이터베이스를 유지하고 있습니다. 데이터베이스간 경로 정보는 공유되지 않으며 네트워크 광고는 하나의 Process에서만 수행 할 수 있습니다. 서로 다른 Process의 정보를 사용하기 위해서는 재분배를 사용해야 합니다.  

(예: 라우터가 Process1과 Process 10 2개의 OSPF를 구동할 경우 
   -> Process가 학습한 경로정보는 상호간에 공유되지 않습니다.  
   -> Process 1에서 선언한 경로는 Process 10에서 선언하더라도 광고되지 않습니다. 
   -> LSDB 정보를 사용하기 위한 방법은 재분배를 사용해야 합니다. ) 

 

'1-1. Routing > -- OSPF' 카테고리의 다른 글

⑤ OSPF DR / BDR 란?  (0) 2022.08.04
④ OSPF Network Type 이란?  (0) 2022.08.04
③ OSPF Neighbor 종류 와 상태  (0) 2022.08.04
② OSPF Packet Type (Hello, DBD, LS R/U/A)  (0) 2022.08.04
OSPF 네이버 성립 조건 #  (0) 2022.04.14

# ex) 4대의 장비가 있으면 4대 모두 OSPF full
neighbor 가 되야하는 조건

1. 물리적으로 직접 연결된 네트워크 여야 함
2. 같은 Area 여야함

'1-1. Routing > -- OSPF' 카테고리의 다른 글

⑤ OSPF DR / BDR 란?  (0) 2022.08.04
④ OSPF Network Type 이란?  (0) 2022.08.04
③ OSPF Neighbor 종류 와 상태  (0) 2022.08.04
② OSPF Packet Type (Hello, DBD, LS R/U/A)  (0) 2022.08.04
① OSPF Routing Protocol - 정의 및 특징  (0) 2022.08.04

+ Recent posts