카테고리 없음

BGP로 네트워크 광고 시에 Neighbor에 따라 Aggregate / 상세 네트워크 제

지기(ZIGI) 2026. 5. 16. 11:30

Today Keys : BGP, aggregate, address,summary,unsuppress-map, route-map, prefix-list, supernet,  suppress, aggregation


BGP로 외부 네트워크와 연동 시에,

내부 네트워크가 갖는 다양한 네트워크 대역을 BGP와 연동된 장비로만 라우팅 시키면 되기 때문에

외부 네트워크에 내부 네트워크의 상세 대역을 개별로 광고할 필요가 없습니다.

그래서, BGP로 네트워크 광고 시에 aggregate-addres 명령을 통해서 내부 네트워크의 다양한 네트워크 대역을 

supernet  형태로 통합하여, 외부 네트워크로 광고하는 대역을 단순화 시켜줄 수 있습니다. 

하지만, BGP Neighbor에 따라서 상세 네트워크를 광고를 해주어야 할 수도 있습니다. 

 

이번 포스팅에서는 BGP Aggregate 환경에서 Neighbor 별로 상세 Prefix 광고를 다르게 제어하는 방법 2가지를 각각 알아봅니다.

 

Int-RT#1과 Int-RT#2 에서는 내부 네트워크에 대한 각각의 모든 라우팅 설정이 있습니다. 

하지만, Ext-RT#1로 BGP를 맺어서 광고 시에는 각각의 네트워크 경로를 일일히 광고하지 않고, 

내부 네트워크 대역에 대해서 Supernet 형태로 광고를 하여

Ext-RT#1에서 보이는 내부 네트워크에 대한 라우팅 테이블을 단순화 하지만, 

Int-RT#1과 Int-RT#2 간에는 모든 상세 대역까지 광고하게 하려고 합니다. 


 

 

Neighbor별로 Outbound Route-map 사용

 

첫 번째 방법은 BGP에 상세 Route를 모두 올려 놓고, neighbor별 outbound policy로 광고 대상을 제어하는 방식입니다. 

본 포스팅에서는 외부로 광고하는 BGP 네이버와 내부로 광고하는 BGP 네이버가 동일하게 1대씩이기는 하지만, 

이 방식은 대부분의 네이버에게는 상세 Route를 광고하고, 일부 네이버에게만 Summary된 Route만 광고하는 경우에 적합합니다.

 

위의 예시에서는 내부 네트워크가 총 5개가 있습니다. 

이 네트워크를 외부에 광고 할 때, 아래와 같이 10.0.0.0/20 으로 하나의 Aggregation된 네트워크로 광고할 수 있습니다.

aggregate-address 10.0.0.0  255.255.240.0

 

하지만, 이렇게 aggregate-address로 Aggregation된 네트워크로 광고를 하더라도

summary-only 옵션을 붙이지 않으면, Summary된 10.0.0.0/20 이외의 상세 네트워크도 동일하게 광고를 합니다. 

 

그래서, 특정 BGP 네이버에게만 상세 Prefix를 차단하는 route-map을 생성하여 적용하면

해당 BGP 네이버로는 Summary 된 네트워크를 광고하는 것처럼 할 수 있습니다.

 

상세 대역을 매치하는 prefix를 다음과 같이 만듭니다. 

ip prefix-list PL-10-DETAIL seq 10 permit 10.0.0.0/20 ge 21 le 32

 

상세 prefix를 차단하는 Route-map을 생성합니다.

route-map RM-TO-ExtRT-SUMMARY-ONLY deny 10
 match ip address prefix-list PL-10-DETAIL

route-map RM-TO-ExtRT-SUMMARY-ONLY permit 100

 

Int-RT#1,INT-RT#2에서는 Ext-RT-#1로 Neighbor 설정 시에,

아래와 같이 out 방향에 route-map을 설정해서, 상세 네트워크를 광고되지 않도록 차단합니다. 

neighbor Ext-RT-1 route-map RM-TO-ExtRT-SUMMARY-ONLY out

 

이렇게 설정하면,

해당 route-map이 적용된 neighbor로는 Summary 된 대역만 광고하고,

그 이외의 neighbor는 Summary된 대역은 물론 상세 네트워크까지 모두 광고 합니다. 

 



Summary only 옵션 및 unsuppress-map 사용

 

두 번째 방법은 기본적으로 Aggregation 된 네트워크를 광고를 하되,

특정 네이버에 대해서만 Aggregation된 네트워크를 포함해서 상세 네트워크를 모두 광고하는 방법입니다. 

앞서 Aggreagtion 된 네트워크 광고를 위해서 aggregate-address 명령어를 사용한다고 했습니다. 

단, summary only옵션을 사용하지 않으면, Aggregation된 네트워크와 함께 상세 네트워크도 모두 광고가 됩니다.

 

이번에는 summary only 옵션을 다음과 같이 추가하여 Aggregation된 네트워크만 광고하도록 설정합니다.

aggregate-address 10.0.0.0  255.255.240.0 summary-only

 

하지만, Int-RT#1, Int-RT#2 간에는 기존의 모든 상세 대역을 그대로 광고하고자 할 때

광고할 상세 prefix를 prefix-list로 설정합니다. 

ip prefix-list PL-10-DETAIL seq 10 permit 10.0.0.0/20 ge 21 le 32

 

그리고, unsuppress-map에 적용하기 위한 route-map을 생성합니다.

route-map RM-UNSUPPRESS-10 permit 10
 match ip address prefix-list PL-10-DETAIL

 

이제 상세 대역을 다시 모두 광고 받을 네이버에 unsuppress-map 설정을 합니다. 

neighbor INT-RT unsuppress-map RM-UNSUPPRESS-10

 

그럼 이제 INT-RT neighbor에서는 Summary되지 않은 상세 경로까지 모두 광고를 받게 됩니다.

 

BGP route aggregatin이 aggregate route를 BGP로 재분배 하거나,

aggregate-address 기반의 conditional aggregation을 구현할 수 있는 데,

summary-only 옵션을 사용하면 aggregate 범위 안의 상세 경로(specific route) 광고를 모든 neighbor에 대해 suppress를 하게 됩니다. 

따라서, aggregate route를 통해서 summary된 경로를 생성하면서 

특정 네이버에 대해서만 상세 경로를 route-map으로 제어하여 광고하거나

summary-only 옵션으로 상세 경로를 기본적으로 모두 suppress하면서, 

특정 네이버에 대해서만 unsuppress 할 prefix를 지정하여, 네이버 별로 광고하는 대역을 제어할 수 있습니다.