OSPF를 공부하고 간략 정리 ( 정리 중)

Network/Routing & Switching|2020. 1. 26. 16:14
반응형

Distance Vector Protocol 과 Link State Protocol의 차이

1. 기존의 방식이였던 Distance Vector Protocol 방식의 문제점을 보완해서 만든것이 Link State Protocol

2. DIstance Vector와 가장 큰 차이점은 LSA(Link State acknowledgement)를 사용하여 라우팅 정보를 잘 수신했다는 응답 메세지를 전달

3. Distance Vector는 목적지로 향하는 경로에 대해서 Next-hop까지만 고려하지만 Link State는 Neigbor로 형성된 모든 Router에 대한 그림을 그리고 Best Path를 계산한다

4. Link State는 Neighbor의 모든 라우팅 정보를 학습하므로, 메모리와 같은 리소스를 많이 사용한다.

5. 라우팅이 전파되거나 계산되는 속도는 Link State가 더 빠르며 그 이유는 모든 라우터가 동시에 계산을 진행하기 때문이다. ( 절차가 더 적다 )

6. Link State는 라우터 성능에 따라 최대 200개 까지 Neighbor구성이 가능하며 Distance Vector는 최대 15개의 Hop-Count를 갖기 때문에 소규모 네트워크에 적합하다.

OSPF 설명

1. OSPF ( Open Sortest Path Forwarding)은 동적 라우팅 프로토콜로 표준 기술 이다.

2. OSPF의 AD값은 110이며, OSPF 내에서 LSA Type에 따라 우선순위가 나뉜다.LSA는 Type 1 ~ 5, 7 이 있으며 낮은 번호일 수록 우선한다. (Type에 대한 이야기는 뒤에 자세히 서술)

3. Best Path는 목적지까지의 Cost를 합산하여 계산하고, Cost는 Bandwidth를 사용하며, 공식은 [기준대역폭/ 실제 대역폭]으로 계산된다

4. 네이버를 맺은 OSPF의 동작 절차는 [ 라우팅 정보 수신 - 자신의 OSPF DB에 해당 내용을 저장 - 자신의 정보 및 수신된 라우팅 정보를 인접한 OSPF 네이버로 전송] - [ 알고리즘을 통해서 최적의 경로 계산 ] - [ 라우팅 테이블에 등록]

※ Link Type 및 알고리즘 계산법에 대한 내용은 다음에 나옴

5. OSPF의 Neighbors는 연결되는 OSPF Link Type에 따라 아래의 방식이 달라진다. ( Physical Link 가 아님 )

  • Neighbor 연결시 설정 방식 ( EX : Non_Broadcast )
  • DR 선출
  • OSPF 동작에 필요한 IP 주소 설정방식
  • Hello / Dead Interval Time

6. OSPF Link Type 의 종류

  • BroadCast( Neigbor 자동 지정 )

  • Non-BroadCast( Neighbor 수동 지정 )

  • Point to Point( Neigbor 자동 지정 )

  • Point to Multicast( Neigbor 수동 지정 )

※ DR, BDR 선출하지 않는 구성으로 만들기 위해 특정 Link Type으로 설정하기도 한다.

7. OSPF는 아래의 조건이 일치하지 않으면 Neighbor가 성립되지 않는다.

  • Direct Connected Physical Interface
  • Area Number
  • Subnet Mask
  • Hello/Dead Interval
  • area Stub (option)
  • Authentication Password (option)
  • differ Router-ID (option)
  • Same MTU

※ AS Number는 BGP 처럼 Domain을 나누는 값이 아니라 router 자체의 Process ID 를 사용하기 위해 사용 하는 값이라 일치하지 않아도 된다.

8. OSPF Packet 종류

  • Hello Type 1 (Hello packet )
    • 네이버 구성 및 유지, 패킷 송 수신시 네이버 유지.
  • Hello Type 2 (Database Description Packet)
    • 네이버 라우터간 LSA 교환 전에 전송하는 데이터베이스 요약본 ( 네이버는 30분 마다 LSA 전송함 )
  • Hello Type 3 (Link Status Request Packet)
    • DDP 수신시 자신에게 없는 라우팅 정보가 있을 경우 Peer에 LSA을 요청할때 사용하는 Packet
  • Hello Type 4 (Link State Update Packet)
    • LSR를 수신하거나, 자신의 네트워크 상태가 변경될 경우 해당 라우팅 정보를 전송할때 사용하는 Packet

※ LSU는 LSA를 운반할때 사용하는 패킷

  • Hello Type 5 (Link State Ack Packet)
    • OSPF Packet을 정상적으로 수신했음을 알려주는 Packet. DDP, LSR, LSU를 수신하면 반드시 전송해아 함

9. Neigbor 상태

Neigbor에는 크게 두 가지 상태가 있다.

Neighbor - 인접한 Peer와 양방향 통신이 완료되어 서로 인식한 상태

Adjacency - Neighbor 완료한 상태에서 라우팅 정보(LSA)를 교환하는 상태

(DRouter 끼리는 LSA를 교환하지 않는다. --> Adjacency 를 맺지 않는다 --> 상태가 2WAY로 남는다 )

위의 Neighbor와 Adjacency 전부 맺게 되면 'show ip ospf neighbor' 상태는 Full 상태가 되며

만약 Adjacency 상태를 맺지 못하고 Neighbor만 맺게 된다면 2WAY 상태로 남는다.

10. DR/BDR

1) DR (designated Router)

  • DR의 존재 이유와 역할 : 전달 받은 LSA를 다른 라우터에게 중계하기 위함

                                 ( 모든 라우터가 LSA를 서로 주고 받으면 리소스가 비효율적임 )

** - 224.0.0.5를 사용하여 다른 라우터로 중계한다.**

  • 목적지 아이피가 224.0.0.5, 224.0.0.6 모두 수신함.

    2) BDR ( Backup DR)

  • BDR :DR이 Down됐을 때, 그 기능을 대신 이어 받는 라우터

** - 224.0.0.6을 사용하여 DR/BDR로 전달한다.**

  • 목적지 아이피가 224.0.0.5 인것만 수신함.

    3) 선출 조건

  • Link Type [Broadcast, Non-Boradcast]에서만 선출

  • Subnetmask 당 각각 1개씩 선출

  • 동일한 서브넷으로 연결된 다른 라우터들과 [물리적으로 직접 연결] 돼야 함.

  • DR/BDR의 선출 조건은 OSPF Priority 값을 기준으로 하며, 높은 값을 우선함.

  • OSPF Priority 값을 기준으로 하며 높을 수록 우선 함. ( Default : 1 )

11. Adjacency Neighbor

  • 라우팅을 주고 받는 네이버를 의미

  • Point-to-point 또는 Point-to-Multipoint 로 연결된 두 라우터

  • Virtual Link로 연결된 두 라우터

>> DRouter간에는Adjacent 네이버를 구성하지 못함.

>> 네이버가 아니면 Adjacent 네이버도 되지 못한다.

## DR에서 확인한 값 ##

아래에 Adjacent 맺은 IP가 확인된다.

위의 Ethernet0/0에 대한 Adjacent 목록은 첫번째 화면 아래에 있고, 네이버간 상태확인은 아래의 Ethernet 0/0과 비교하면 된다.

※ Eth0/0에 해당하는 네이버는 모두 네이버 상태에 있다.

#DRouter에서 확인한 값. DR과 BDR만 연결돼 있다.

12. OSPF 상태 변화

  • Down : OSPF가 설정되어 hello packet을 전송하지만 상대방으로 부터 패킷을 받지 못하는 상태

  • Init : 상대방에서 보낸 Hello Packet을 받았지만, 상대방의 Neighbor List에 나의 라우터 ID가 없음

  • 2WAY : DR/BDR로 선출되지 못한 DROUTER에서 나타나는 상태.

           Neighbor와 양방향 통신이 완료된 상태이다. 
  • Full : Adjacent Router 간 라우팅 정보 교환이 끝난 상태 ( LSDB 상태가 모두 동일하게 된다. )

 >> DROUTER 상태 라우터의 네이버 테이블이다. DR/BDR과는 Full 상태이고 DROUTER간의 연결은 2WAY이다.

** >> DROUTER 상태 라우터의 네이버 테이블이다. DR/BDR과는 Full 상태이고 DROUTER간의 연결은 2WAY이다.**

13. OSPF 경로

OSPF 경로에 따라 show ip route 명령어로 출력되는 코드 정보가 다르다.

코드 / 우선순위

  • O / 1 : 동일 Area에 소속된 경로

  • O IA / 2 : 다른 Area에 소속된 경로

  • O E1 / 3 : 변동 Cost 값을 가지는 외부 경로

  • O N1 / 4 : 변동 Cost 값을 가지는 NSSA 외부 경로

  • O E2 / 5 : 고정 Cost 값을 가지는 외부 경로

  • O N2 / 6 : 고정 Cost값을 가지는 NSSA 외부 경로

    ※ OSPF AD값은 모두 110이지만, 경로에 따라 우선순위가 달라진다.
    Cost가 낮을 수록 우선시 되지만, Cost보다 Code에 의한 값이 더 우선되기 때문에
    예를 들면, Cost20인 외부 경로보다 Cost 200인 내부 경로가 더 우선된다.

14. OSPF 경로 재분배

  • Type 2 로 재분배 : redistribute connected subnet
  • Type 1으로 재분배 : redistribute connected subnet metric-type 1

재분배 기본값은 Type2로 적용되며 뒤에 Metric-type 1을 붙여주면 Type1으로 배분배 된다.
Type2의 Metric 값은 BGP는 기본 Cost가 1이고 나머지는 20 이다.

15. OSPF LSA, Link State Database

  • OSPF는 11가지의 LSA Type을 사용하여 라우팅 정보를 전달한다.
  • OSPF는 Neighbor로부터 수신된 모든 LSA를 모두 LSDB에 저장한다.
  • LSDB는 Area별로 관리되며, 동일한 Area에 소속된 내부라우터들의 LSDB는 모두 동일하다.
    OSPF LSA Type

*16. OSPF Stub Area *

  • ABR이 외부 경로에 대한 LSA를 차단하고 Default Routing을 전달하는 Area
  • 결과적으로 Routing table의 크기가 대폭 감소되어 네트워크 안정성이 향상되고 라우팅 성능도 좋아짐
  • Stub Area의 제약사항
    -- 백본 Area ( Area 0 ) 가 될 수 없다.
    -- Virtual Link 설정 시 Transit Area가 될 수 없다.
    -- Area 내부에 ASBR을 둘 수 없다. ( NSSA는 가능하여 제외 )
반응형

댓글()