2013년 12월 30일 월요일

GRE IPsec VPN을 이용한 원격지간 OSPF Area 연결 - 6. OSPF 축약/생략하기



여기까지 정상적으로 진행해 왔다면, 아래의 Routing table을 볼 수 있다.

먼저 A00A


A00B


A10A


A20A


여기서 O IA 로 표시된 경로가 바로 다른 Area에서 전달받은 경로들이다.
ABR(Area Border Router)인 A00A/A00B는 모두 자신이 속한 Area들이라 O IA가 없다.

근데, 보시다시피 라우팅 테이블이 너무 많다. 그리고 상당수가 축약 가능한 경우거나 불필요한 경로(iBGP 동기화용 DMZ)들이다. 그리고 과도한 Routing Table은 불필요한 부하를 발생시킬 수 있다. Routing Table에 다이어트를 시작해보자.



1. 축약하기

불필요하게 많은 내역을 축약하면, 좀더 간략화된 Routing table을 만들 수 있고, 그만큼 라우터에 부하를 줄일 수 있다.

축약은 ABR인 A00A/A00B에서 진행한다.
두개의 라우터 모두에서 아래의 명령어를 실행한다.

Router(config)# router ospf 5730
Router(config-router)# area 0 range 192.168.101.0 255.255.255.0
Router(config-router)# area 10 range 192.168.111.0 255.255.255.0
Router(config-router)# area 20 range 192.168.121.0 255.255.255.0

완료 후에는 아래와 같이 된다.

A00A에서 확인시 아래와 같이 축약한 경로 셋이 추가된 상태로 나온다.
경로가 Null0인 것은 특정 인터페이스로 지정한 경우 생길 수 있는 인터페이스 다운으로 인한 장애를 방지하기 위해서. ABR이기 때문에 Routing Table은 모두 다 표시된다. 하지만 Area가 다른 라우터로 광고하는건 축약된 경로만 광고된다.



A00B에서 확인시에도 동일하게 Null0로 지정된 축약 경로 셋이 추가된다.



이렇게 축약된 경로를 전달받은 A10A(Area 10)/A20A(Area 20)의 Routing Table은 아래와 같다.

A10A(Area 10)에서는 아래와 같이 Area 0(192.168.101.0/24)와 Area 20(192.168.121.0/24)이 축약된 경로로 표시된다.


A20A(Area 20)역시 아래와 같이 Area 0(192.168.101.0/24)와 Area 10(192.168.111.0/24)이 축약된 경로로 표시된다.


하지만, 두 라우터 모두 축약되지 않은 경로들 역시 광고받았고, 그중에서도 불필요한 경로들을 가지고 있다. 바로 DMZ(Demilitarized Zone) 인터페이스들. 이 경로들은 어디까지나 그 용도가 iBGP연결을 위해 IGP인 OSPF에 포함시킨 인터페이스들이다. 그나마도 순수 eBGP연결만 존재하는 Area 10/20에서는 불필요하다. (다만, 지금처럼 단순화시키지 않은 원래의 계획상으로는 모든 Area가 Area 0처럼 이중화 구조를 취하고 있었기 때문에 최초 계획대로 해둔 상태.)
이제 이러한 DMZ 인터페이스들을 생략해보자.



2. 제외/생략하기


2-1. OSPF network 선언에서 제외시키기

OSPF차원에서의 방법은 간단하다. 그냥 해당 네트워크만 제외시키면 되니까.
문제는 iBGP영역. 당장은 문제가 없지만 A00A-ISP_A 나 A00B-ISP_C 구간에 장애가 발생할 경우 문제가 생길 수 있다. 이 문제는 iBGP설정을 변경함으로서 해결 할 수 있다. 즉, 이 방법은 iBGP설정을 변경하고, OSPF선언을 제외하면 된다.

작업방식은 아래와 같이 진행하면 된다.

먼저 A00A의 DMZ 인터페이스를 ospf에서 제외시킨다.

Router(config)# router ospf 5730
Router(config-router)# no network 10.10.10.4 0.0.0.3 area 0

이후 A00A의 BGP설정에 아래와 같이 추가한다.

Router(config)# router bgp 11
Router(config-router)# neighbor  205.172.100.129 next-hop-self

A00B는 아래와 같다.

Router(config)# router ospf 5730
Router(config-router)# no network 12.12.12.4 0.0.0.3 area 0

Router(config)# router bgp 11
Router(config-router)# neighbor 205.172.100.129 next-hop-self

A10A/A20A는 ospf설정에서 DMZ만 제외해주면 된다. (iBGP설정이 없음.)

제외한 결과 및 입력한 세부 명령은 아래와 같다.


A00A

router ospf 5730
no network 10.10.10.4 0.0.0.3 area 0

router bgp 11
neighbor 205.172.100.129 next-hop-self



A00B

router ospf 5730
no network 12.12.12.4 0.0.0.3 area 0

router bgp 11
neighbor 203.172.100.129 next-hop-self




A10A

router ospf 5730
no network 11.11.11.12 0.0.0.3 area 10



A20A

router ospf 5730
no network 13.13.13.12 0.0.0.3 area 20




2-2. OSPF 경로 광고에서 제외시키기

방법은 이전에 사용했던 distribute-list를 쓰는 것이다. 역시 여기서도 in을 사용한다. out을 사용할 수는 있지만 이 경우에는 2-1과 본질적으로 차이가 없다. 앞에서 작성한 ACL를 수정(Named ACL로 작업한 경우)하거나 삭제 후 새로작성, 혹은 별도의 distribute-list를 사용할 수 있다. 여기서는 A00A만 과정을 명시하고 나머지는 최종 ACL 및 distribute-list 명령을 사용한다.

먼저 DMZ 인터페이스를 잠시 종료시킨다.

Router(config)# int s1/0
Router(config-if)# sh

그리고 ACL을 제거한다. 기존에 작업한 것이 Named가 아니라서 수정은 할 수 없다.
(Named로 한 경우라면 수정하면 된다.)

Router(config)# no access-list 11

제거한 뒤, 다시 동일한 번호로 새로 생성한다. 기존것에서 두줄이 추가된 구조다.

Router(config)# access-list 11 deny 204.172.100.160 0.0.0.3
Router(config)# access-list 11 deny 206.172.100.160 0.0.0.3
Router(config)# access-list 11 deny 11.11.11.12 0.0.0.3
Router(config)# access-list 11 deny 13.13.13.12 0.0.0.3
Router(config)# access-list 11 permit any

최종적으로 DMZ 인터페이스를 다시 활성화 시킨다.

Router(config)# int s1/0
Router(config-if)# no sh

동일한 방식으로 다른 3개의 라우터도 설정하면된다.


여기까지 설정이 끝난 경우의 ACL 설정은 아래와 같다.
(기존 ACL과 동일한 번호를 사용.)


A00A

access-list 11 deny 204.172.100.160 0.0.0.3
access-list 11 deny 206.172.100.160 0.0.0.3
access-list 11 deny 11.11.11.12 0.0.0.3
access-list 11 deny 13.13.13.12 0.0.0.3
access-list 11 permit any




A00B

access-list 11 deny 204.172.100.160 0.0.0.3
access-list 11 deny 206.172.100.160 0.0.0.3
access-list 11 deny 11.11.11.12 0.0.0.3
access-list 11 deny 13.13.13.12 0.0.0.3
access-list 11 permit any




A10A

access-list 10 deny 203.172.100.128 0.0.0.3
access-list 10 deny 205.172.100.128 0.0.0.3
access-list 10 deny 10.10.10.4 0.0.0.3
access-list 10 deny 12.12.12.4 0.0.0.3
access-list 10 deny 13.13.13.12 0.0.0.3
access-list 10 permit any




A20A

access-list 10 deny 203.172.100.128 0.0.0.3
access-list 10 deny 205.172.100.128 0.0.0.3
access-list 10 deny 10.10.10.4 0.0.0.3
access-list 10 deny 11.11.11.12 0.0.0.3
access-list 10 deny 12.12.12.4 0.0.0.3
access-list 10 permit any




P.S : 잘 보면, 제외시키는 쪽이 광고 안받는 쪽 보다 ABR의 Routing Table 길이가 짧다. (정확히는 한줄 차이) 이건 eBGP를 위한 경로가 필요한가 아닌가의 차이.

댓글 없음:

댓글 쓰기