CCNA - OSPF

TAM K
|2024. 9. 7. 23:55

A. 개요

1. 특징

  • Open Shorest Path First의 약자.
  • Link State Protocol로써 자신의 정보를 남에게 알려줌.
  • 표준 프로토콜(Open standard protocol)
  • 멀티캐스트 사용.
  • Dijkstra(데이스트라)의 최단 경로 우선 알고리즘 사용.


2. RIP,EIGRP,OSPF 비교

  • RIP은 확장에 제한이 있어 소규모 네트워크나 랩 또는 테스트 환경에 적합하다.
  • EIGRP는 구성, 문제해결이 간편하다는 장점이 있지만 역사적으로 Cisco의 전용 프로토콜이였어서 범용성에서 떨어진다.
  • OSPF는 EIGRP와 마찬가지로 대규모 네트워크를 지원한다. 또한, EIGRP와 다르게 표준 프로토콜로 범용성이 좋다.


3. OSPF 동작 과정

  1. 라우터에서 OSPF를 활성화 할 경우 가장 먼저 직접 연결된 이웃 라우터를 파악해 연결관계를 형성한다.
  2. LSDB(Link State Database)를 보내 경로를 공유한다.
  3. 모든 경로 학습시 가장 짧은 경로를 산출하여 라우팅 테이블에 입력한다.
  4. 그 후, 네트워크에 변동사항이 있으면 반응을 한다.

 

4. OSPF 패킷 종류

  • hello : OSPF가 활성화 되면 hello 패킷을 보내고 수신 대기를 한다. 해당 인터페이스에서 hello 패킷을 받으면 인접성을 형성한다.
  • DBD(Database Description) : 네트워크에 대해 알고있는 정보가 포함된 DBD를 서로에게 보낸다.
  • LSR(Link State Request) : 만약 이웃라우터로부터 전달 받은 DBD에 네트워크 정보가 누락 됬다면 이웃라우터에 LSR를 보낸다.
  • LSA(Link Satate Advertisment) : LSR을 받은 이웃라우터는 링크상태 알림인 LSA를 보내 회신을 한다.
  • LSU(Link State Update) : 업데이트가 필요한 LSA의 목록을 포함하여 플로딩 과정에서 사용한다.
  • LSArk : 라우터들이 이웃 라우터들에게서 메세지를 수신할때 라우터는 수취 확인을 회신한다. 프르토콜 신뢰도를 높이기 위함이다.

 

B. 구성법

1. Process ID


router ospf "process ID"
network x.x.x.x   x.x.x.x   area x

한 라우터의 각 인터페이스는 서로 다른 프로세스 ID를 가지는게 가능하다. 그러나 일반적으로 서로 다르게 세팅하지는 않는다. 왜냐하면 서로 다른 인스턴스, 즉 서로 다른 프로세스 ID를 가지면 다른 LSDB를 가진것이고 서로 개별의 링크이기 때문에 정보를 공유하지않는다. 하지만 인접성은 형성을 하기는 한다.

Process ID

2. network

예를 들어 위와 같이 라우터가 구성되어 있다면 인접성은 형성하겠지만 가운데 라우터는 ID2,ID3이란 서로 다른 프로세스 ID 값을 가지고 있다. 이 둘은 개별의 링크상태이므로 서로 정보를 공유하지 않는다. 이는 곧 좌측 라우터와 우측 라우터가 서로의 경로를 학습 못하게 됨을 의미한다.

EIGRP 명령어와 거진 다 동일하다. 몇가지 차이점으로는 와일드 카드 생략이 불가능하다, area 값을 지정해줘야한다. 2가지이다.


3. 검증

sh run | section ospf

sh ip ospf interface brief

sh ip ospf neighbor

sh ip ospf database

sh ip route


4. Router ID

EIGRP와 동일하다

router ospf
router-id x.x.x.x

5. Passive Interface

router ospf "ID"
passive-interface "interface name"

또는 만약에 활성화 된 인터페이스 보다 수동인터페이스가 더 많은 경우라면 아래와 같이 전부 수동 인터페이스로 바꾸고 활성화 시킬 인터페이스만 따로 활성화 시키는게 가능하다.

router ospf "ID"
passive-interface default
no passive-interface "interface name"


6. Default Route Injection

ip route "IP" "Wild" "nexthop"
router ospf "ID"
default-information originate

라우팅 테이블 확인시 외부경로로 표시된다. 여기서 외부경로란 외부에서 온 경로가 아니다. OSPF외 다른 프로토콜의 경로가 OSPF로 재분배 되었음을 의미한다.

 

C. 대역폭과 클럭, 비율속도

1. Speed

인터페이스의 속도는 Speed란 명령어를 통해서 정해진다.
기가비트 = 1000mbps
FE = 100mbps


2. Clock Rate

Serial 인터페이스에서 작동하는 명령어로 clock rate란 명령어를 통해서 속도가 정해진다. 기본값은 1.544mbps 이다. 당연하게도 스피드 명령어와 동일하게 양쪽링크를 동일하게 맞춰줘야한다.


3. Bandwidth

대역폭 설정은 소프트웨어 정책에 영향을 주는항목이며 실질적인 물리적인 인터페이스의 속도에는 영향을 주지 않는다. 일반적으로 이 항목을 건드는 일은 없고 물리 인터페이스 값과 동일하게 설정한다.

 

D. OSPF Cost Matric

1. 개요

OSPF 비용은 인터페이스 대역폭 기반으로 자동 계산된다. 다시 말해 더 높은 대역폭의 인터페이스가 우선시 된다. 즉, 더 낮은 값의 코스트가 우선시 된다. 구하는 공식은 아래와 같다.

기준 대역폭(Rerference Bandwidth)
------------------------------
실제 대역폭 (Interface Bandwidth)

기준 대역폭의 기본값은 100 이지만 수동으로 바꿀 수 있다.

router ospf "ID"
auto-cost reference-bandwidth "값"

기준 값을 왜 바꿔야하냐면 인식할 수 있는 최저의 수가 1인데 이를 통해 FastEthernet, 기가비트 등등 같은 결과 값이나오게 되기 때문이다.

2. 특징

OSPF의 메트릭값을 합산할 때 링크 자체의 값도 잊지 말고 계산해야한다.

OSPF는 경로 조작이 가능하다. 대역폭이나 인터페이스상의 OSPF 비용을 조정하면 되는데 비용조정이 좀더 안전한 방식이다.

interface "이름"
ip ospf cost "값"

 

E. OSPF 인접성

1. hello packet

서로를 탐색 발견하고 인접성 형성.

OSPF가 활성화된 인터페이스에만 hello packet을 전송.
(이때, 당연한 말이지만 수동 인터페이스는 제외됨.)

Multicast 주소 224.0.0.5로 모든 OSPF 라우터에게 보냄.

10초에 한번씩보낸다.

2. hello packet의 구성

  • Router ID = 다른 OSPF에게 자신을 인식시키기 위해 사용하는 값.
  • Hello Interval = hello 패킷을 보내는 빈도 값. 10초가 기본값
  • Dead Interval = 이웃의 소식을 기다리는 값. hello 인터벌의 4배가 기본값.
  • Neighbor = 이 라우터에게 hello 패킷을 전송한 OSPF 라우터 목록.
  • Area ID = 인터페이스 수준에서 링크에 영역이 구성된다.
  • Router Priority = DR,BDR 선출시 사용되는 8bit 숫자
    • DR,BDR 에 대한 정보를 알고 있으면 해당 IP 정보도 hello 패킷에 포함 된다.
  • Authentication Flag = 인증값, 이를 통해 쉽게 접근하게 하지 않는다.
    • 실무에선 기본이지만 시험에선 몰라도 됨
  • Stub Area Flag = 스텁영역 여부를 나타냄.
    • 스텁영역이란? 자신들의 영역 외부에서 경로를 학습하는 대신 ABR(서로다른 영역의 경계에 있는 라우터)로 가는 기본 경로를 가지고 있다.

 

F. OSPF DR&BDR

1. 개요

1:1로 구성되는 라우터(위에 보이는 슬라이드 캡쳐들) 경우에는 서로 완전한 인접성을 형성하는게 좋지만 여러개의 라우터가 있을수 있는 이더넷과 같은 다중 엑세스 세그먼트에서는 비효율적이다.

DR이란 마스터를 뽑아서 해당 라우터에게 정보를 주고 해당 라우터가 정보를 다른 아이들에게 뿌리는게 더 효율적이다.  BDR은 DR 백업이다.

DR과 BDR은 라우터 전체 수준이 아닌 인터페이스 수준에서 동작한다. 즉, 한 라우터에 여러개의 인터페이스가 있고 각 인터페이스가 속한 영역이 다르면 개별로 DR,BDR을 선출한다.

선출방법으로는 라우터 우선순위 값이 높은 순으로 DR,BDR 뽑으며 가능한 값은 0-255 이다. 만약 우선순위 값이 같으면 Router ID값이 높은 아이가 선출된다. DR과 BDR 선출은 2-way 단계에서 진행된다. 또한, 실무에선 알아서 설정하게끔 그냥 내비둔다.

Router Priority 수동설정
interface "int name"
ip ospf priority "0-255"

마지막으로, DR과 BDR은 서로를 포함한 다른 라우터들과 완전한 인접성을 형성하지만 DR과 BDR이 아닌 DROTHER 라우터 끼리는 2-way 상태에 머문다. 물론 정보는 DR을 통해서 공유한다.

어느 특정 라우터가 네트워크 정보가 변화됨을 감지하면 224.0.0.6 주소로 LSU 패킷을 보내고 이를 DR과 BDR이 받고 DR이 224.0.0.5 주소로 멀티캐스트를 보내 다른 아이들에게 정보를 공유한다.








 

'Network > CCNA' 카테고리의 다른 글

CCNA - VLAN  (0) 2024.09.09
CCNA - 네트워크 디자인  (2) 2024.09.08
CCNA - RIP & EIGRP  (0) 2024.09.05
CCNA - 연결성 문제 해결  (0) 2024.09.05
CCNA - 동적 라우팅 프로토콜  (1) 2024.09.04