인터넷은 기본적으로 BGP(Border Gateway Protocol)라는 라우팅 프로토콜을 기반으로 모든 네트워크가 운영된다. 만일 BGP가 없었다면 인터넷이 오늘날처럼 활성화되지 못했을 수도 있다.
사례를 통해, 자주 사용되는 BGP 설정 방법에 대해서 알아보자.
[사례 3] C기업의 BGP 설정 예
C기업은 C클래스 16개(200.200.128.0∼143.0)를 사용하고 있으며, KT-10Mbps, 데이콤-100Mbps를 이용하고 있다. 라우터 설정은 다음과 같이 돼 있다.
interface ethernet0
ip address 200.200.143.1 255.255.255.252
router bgp 100
network 200.200.128.0 mask 255.255.240.0
neighbor 1.1.1.2 remot-as 4766
neighbor 1.1.1.2 filter-list 10 out
neighbor 1.1.1.2 description KT-10
neighbor 2.2.2.3 remot-as 3786
neighbor 2.2.2.3 filter-list 10 out
neighbor 2.2.2.2.3 description Dacom-100
ip as-path access-list 10 permit ^$
ip route 0.0.0.0 0.0.0.0 1.1.1.2
ip route 0.0.0.0 0.0.0.0 2.2.2.3
ip route 200.200.128.0 255.255.240.0 Null 0
- 설정 후 PRTG를 이용해 모니터링 하던 중 이상한 것을 발견했다.
- KT의 전용회선은 10Mbps이고 데이콤의 전용회선은 100Mbps인데, KT-10Mbps 전용회선은 항상 풀로 차 있고, 데이콤의 100Mbps 전용회선의 사용률은 10%도 안되는 것이었다.
- 여기서 필요한 것이 바로 BGP에서의 트래픽 제어다.
- BGP에서 트래픽 제어는 크게 아웃바운드와 인바운드, 이렇게 두 가지로 나눠볼 수 있다.
Weight 설정 방법(아웃바운드 트래픽 제어)
- BGP에서 아웃바운드의 트래픽을 제어하는 방법은 다양하다.
- 그 중에서 가장 손쉬운 방법은 가중치(weight) 값을 주는 것이다.
- BGP에서 경로 선정시 가장 우선순위는 바로 가중치 값이다.
- 가중치가 높을수록 해당 경로를 이용한다
- 가중치의 디폴트 값은 "0"
- AS200보다 AS300이 대역폭이 훨씬 더 크므로 AS300의 가중치 값을 높게 설정하면 트래픽은 AS300으로 나가게 된다.
EX)
neighbor 2.2.2.3 weight 200 // 데이콤쪽의 가중치를 200으로 선언, KT쪽은 0
위와 같이 선언하면 대부분의 국내 트래픽은 데이콤을 통해 나가며, BGP 정보를 받지 못하는 해외쪽은 양쪽 다 골고루 로드밸런싱돼 나간다.
Prepend(인바운드 트래픽 제어)
- 가장 쉽게 많이 사용하는 방법은 'as-path prepend'를 이용하는 것이다.
- (그림 7)에서 보듯이 KT로 보낼 때 자신의 AS 넘버를 하나 더 추가해서 보낸다.
- 이렇게 되면 외부의 사용자 라우터들은 결과적으로 KT를 통해 들어오는 as-path가 하나가 더 늘어나므로 데이콤쪽으로 들어온다.
- (그림 7)처럼 됐을 때 외부의 라우터에서 바라본 결과는 다음과 같다.
ex_router# show ip bgp 200.200.128.0
BGP routing table entry for 200.200.128.0/20, version 138720
....
4766 100 100
3786 100
ex_router 기준으로 200.200.128.0/20에 대한 것은 AS3786(데이콤)을 통하는 것이 더 가깝기 때문에 데이콤을 경유해 들어온다.
Config)
neighbor 1.1.1.2 route-map KT-out out
route-map KT-out permit 10
set as-path prepend 100
C기업의 수정한 라우터 설정 값은 다음과 같다.
interface ethernet0
ip address 200.200.143.1 255.255.255.252
router bgp 100
network 200.200.128.0 mask 255.255.240.0
neighbor 1.1.1.2 remot-as 4766
neighbor 1.1.1.2 filter-list 10 out
neighbor 1.1.1.2 route-map KT-out out
neighbor 1.1.1.2 description KT-10
neighbor 2.2.2.3 remot-as 3786
neighbor 2.2.2.3 filter-list 10 out
neighbor 2.2.2.3 weight 200
neighbor 2.2.2.3 description Dacom-100
ip as-path access-list 10 permit ^$
ip route 0.0.0.0 0.0.0.0 1.1.1.2
ip route 0.0.0.0 0.0.0.0 2.2.2.3
ip route 200.200.128.0 255.255.240.0 Null 0
route-map KT-out permit 10
set as-path prepend 100
출처
http://animeclub.kr/it_network/74701
'IT Technology > Network' 카테고리의 다른 글
CIDR이란?(사이더 란?) (0) | 2022.07.21 |
---|---|
공인IP 받는 방법 (0) | 2022.07.20 |
L4 스위치 쉽게 이해하기(Source IP NAT문제 해결) (0) | 2022.06.27 |
Brocade Switch 점검 명령어 (0) | 2022.05.15 |
스위치 스택킹(Stacking) 기술이란? (0) | 2022.03.25 |