ahffkdy13.log
로그인
ahffkdy13.log
로그인
[CISCO 보안 아카데미 1기 Part.2] 12일차 정리(BGP)
Jin_Hahha
·
2024년 9월 9일
팔로우
0
0
CISCO 보안 아카데미 1기
목록 보기
42/54
BGP
Interdomain Routing
AS?
단일 기술 관리자 하에 관리되는 네트워크의 집합
BGP는 다수의 IGP를 사용할 수 있음
AS내에서 공통 metric을 사용하여 라우팅 가능
AS는 BGP를 유일한 라우팅 프로토콜로 사용할 수 있음
서로 다른 도메인 사이에 사용하는 라우팅 프로토콜을 EGP라고 함
다른 AS에 있는 라우터는 신뢰할 수 없음
BGP는 늘 최적의 경로를 선택하는 것은 아님
정책을 세워서 최적의 경로로 통신하도록 설정해야 함
특징
BGP는 (Distance Vector)Path vector 프로토콜
Reliable Updates
Triggered updates only
path attributes
컨버전스 시간을 신경쓰지 않음
Reliable Updates
TCP를 전송 프로토콜로 사용
비주기적 업데이트
주기적인 keepalive 메시지를 통한 TCP의 연결성 확인
Triggered Update를 축적했다가 일정 시간이 지날 경우 라우팅 업데이트를 수행
변경된 라우팅이 일정 시간 유지될 경우 라우팅 업데이트 진행
iBGP(internal peer) 사이에는 5초 동안 유지 확인
eBGP(external peer) 사이에는 30초 동안 유지 확인
BGP 개발 고려사항
일반적인 BGP 사용
고객이 다수의 Service Provider에 연결할 경우
Service Provider 네트워크
Exchange Point에서의 Service Provider 간의 xmfovlr ryghks
대형 엔터프라이즈 고객들의 네트워크 코어
사용 가이드라인 - Single-Homed Customers
고객과 service provider 사이에 다음과 같은 상황에서 BGP 사용
고객들이 같은 service provider에 다중 접속
결함 탐지를 위해 service provider 동적 라우팅 프로토콜이 필요한 고객
해당 고객들의 경우 사설 AS number를 사용
인터넷에서 자신들의 경로를 시작해야 하는 작은 ISP
실질적으로 single homed일 경우 Static Routeing을 사용하자
BGP보다 늘 단순했음
사용 가이드라인 - Multihomed Customers
BGP는 multihomed 고객들의 경우 필수적
Multihomed 고객들은 공인 AS Number를 사용해야 함
Multihomed 고객들은 provider 의존적 주소 공간을 사용해야 함
AS 전송의 경우, BGP를 통한 경로 교환이 필수적
BGP 한계
BGP와 그와 연관된 tool은 모든 라우팅 정책을 표현할 수는 없음
BGP는 하위 AS의 라우팅 정책에 영향을 줄 수 없음
BGP Path Attributes
BGP metric은 path attributes로 불림
BGP attribute는 두 가지 항목으로 분류됨
well-known
모든 준수 구현에 의해 인식되어야 함
optional
well-known과 다르게 모든 implementation에 의해 인식될 필요는 없음
Well-Known BGP Attributes
mandatory와 discretionay로 나뉨
모든 well-known 속성은 다른 neighbor로 전파됨
Mandatory Well-Known BGP
모든 업데이트 메시지에 필수적으로 표현되어야 함
Origin(Origin of BGP route)
i
IGP로부터의 경로
EIGRP, Static 등
Best Path 우선순위 1순위
Code Num 002
e
EGP로부터의 경로
과거 라우팅 기술의 잔재
Best Path 2순위
Code Num 001
?
BGP 안으로 재분배된 경로
Best Path 3순위
Code Num 000
AS-path
네트워크에 접속할 수 있는 AS 번호 sequence
AS를 건널 때마다 어떤 AS를 거쳤나를 표시
Next-hop
next-hop router의 IP 주소
Discretionary Well-Known BGP
Discretionay well-known 속성은 선택적
업데이트 메시지에 표현될 수도 있고 없을 수도 있음
Local preference
AS내에서 라우팅 정책 유지에 사용됨
특정 AS에서 외부 AS로 나갈 때, 어떤 AS를 우선시할지 결정
default 값은 100
Atomic aggregate
neighbor AS에 근원지 라우터가 집계한 경로를 알림
Summary를 해야 Setting 되는 설정
Optional BGP Attributes
transitive와 nontransitive로 나뉨
Transitive
만약 인지되지 않았을 경우, 다른 neighbor로 전파됨
부분적 bit가 속성이 인지되지 않았음을 표시
Nontransitive
인지되지 않았을 경우 무시됨
Nontransitive attributes
다중 출구 식별자
단일 AS로의 다중 입구 지점 사이의 식별
Transitive attributes
Aggregator
경로 집계를 수행하는 라우터의 IP 주소와 AS 번호를 특정
Community
경로 Tagging
AS-Path Attribute
BGP table로 local 경로가 들어왔을 때, AS-Path 속성은 빈 상태
AS 경계를 가로질러 라우팅 업데이트를 할 때, 전송자의 AS 번호가 AS-Path 속성에 추가됨
BGP 라우팅 정보의 수신자는 해당 정보가 어떤 AS를 거쳐서 왔는지를 AS-Path 속성으로 결정
AS 경로 내에서 자체 AS 번호로 라우팅 정보를 받는 AS는 해당 정보를 무시
Next-Hop Attributes
Packet Forwarding을 위한 next-hop IP 주소를 나타냄
일반적으로 전송하는 External Border Gateway Protocol(EBGP) 라우터의 IP 주소로 설정
라우팅을 최적화 하기 위해서 Third-Party IP 주소로 설정될 수 있음
example
IGP 도중 next-hop에 대한 정보가 없을 경우, next-hop 주소를 connected 된 본인의 IP 주소로 설정하여 패킷 전송
eBGP 도중 neighbor 라우터에서 인식이 불가능한 주소로 next-hop이 설정된 경우, neighbor 관계의 다른 AS에 존재하는 라우터로 next-hop 주소를 다른 AS와 연결된 본인 인터페이스의 주소로 설정하여 전송
BGP Neighbor Discovery
Discovered
BGP neighbor는 discovered 되지 않음
수동적으로 설정되어야 함
Configuration은 연결된 양측에 모두 완료되어야 함
두 라우터는 179번 포트로 TCP 세션으로 연결을 시도함
오직 높은 라우터 ID 세션만이 연결 시도 이후에 잔류함
수신 연결 시도의 근원지 IP 주소는 구성된 neighbor 리스트와 비교됨
초기 BGP 세션 상태
BGP Open Message에 포함된 항목들
BGP version num
AS number of the local router
Holdtime
BGP Router identifier
Optional parameters
BGP neighbor 세션 구성 확인
BGP Keepalives
TCP 기반의 BGP 세션은 neighbor 존재 확인 수단을 제공하지 않음
BGP Traffic 전송할 경우 제외
BGP는 추가 메커니즘이 필요
Keepalive BGP 메시지는 neighbor 존재 증명 제공
Keepalive 메시지는 매 60초마다 전송됨
Keepalive 주기 값은 BGP Opne 메시지에서 전달되지 않음
Keepalive 값은 다음 사항들에서 결정됨
local holdtime이 사용될 경우의 구성된 값
neighbor의 holdtime이 사용되고 keepalive < (holdtime의 3분의 1)인 경우의 구성된 값
neighbor의 holdtime이 사용되고 keepalive > (holdtime의 3분의 1)인 경우에서, (holdtime의 3분의 1)과 비교했을 때 더 작은 수
MD5 인증
BGP Peer는 공유키를 사용하여 MD5 TCP 인증을 사용하는 경우도 있음
모든 라우터는 같은 패스워드로 구성되어야 함
각 TCP 세그먼트는 확인되어야 함
Processing BGP Routes
BGP Route Selection Criteria
Next hop으로 연결이 불가능한 경로 제외
next hop이 본인의 라우팅 테이블에 있어야 함
더 높은 가중치 우선
라우터의 정책
가장 높은 local 우선순위를 우선시 (AS내 전역적)
AS의 정책(iBGP로만 업데이트됨)
라우터에서 시작된 경로 우선
본인이 광고한 경로를 더 우선시
AS 길이가 짧은 경로 우선
오직 길이만 비교됨
더 낮은 origin 코드 우선
IGP < EGP < Incomplete
더 낮은 MED 우선
외부 경로(EBGP)를 내부 경로(IBGP)보다 우선
IBGP의 경우, 가장 가까운 IGP next hop을 우선
EBGP의 경우, 더 오래된(가장 안정적인) 경로를 우선
더 낮은 BGP Router-ID를 지닌 라우터의 경로를 우선
Router-ID가 낮다는 의미는 꽤 오래 전부터 현재 시점까지 문제 없이 동작했다는 의미(안정성이 좋다는 의미)이기에 Router-ID가 더 낮은 라우터 선택
위의 11단계는 BGP를 이해하는 데에 가장 중요한 내용
MED
IGP의 Metric 개념
IGP의 Metric 값을 그대로 복사하여 사용
BGP로 전송되는 데이터에는 Metric 대신 MED가 저장되어 전송
AS path 값이 empty 상태가 아니면, MED 값은 사라짐
BGP의 경로 설정은 위의 11단계로 확인하는데, 임의로 어떤 사항을 체크할지 설정할 수 있음
이때 MED 값까지만 보겠다고 설정할 수 있음
MED 값은 내부로 들어오는 데이터에 관한 관리를 목적으로 사용한다고 생각할 수 있으나, 실제로는 밖으로 나가는 데이터에 대해 최적 경로를 선정하는 데에 사용한다고 볼 수 있음
Advertising Local Networks
BGP 라우터 프로세스는 local network 리스트를 유지함
network 명령어 또는 재분배를 통해서 정의
주기적으로 IP 라우팅 테이블을 스캔
IP 라우팅 테이블에 존재하는가에 따라서 BGP 라우팅 테이블에 경로를 추가 또는 삭제
Automatic Summarization
자동 축약 기능은 기본적으로 활성화 상태
자동 축약이 활성화되는 경우
Major Network Boundary로 재분배되는 IGP-to-BGP 경로의 요약
Classful network 명령어를 사용하는 경우, Major Network Boundary에 대한 서브넷 요약
비활성화되는 경우
IGP-to-BGP 재분배가 필요하지 않은 경우
network 명령어의 classless 범위 사용
Configuring BGP
Starting
BGP 라우팅 시작
AS 번호는 사설을 사용하거나 공인 AS 번호를 구매
Neighbor Configure
External neighbor를 정의
External neighbor는 바로 연결된 서브넷 너머를 통해 도달할 수 있어야 함
Neighbor Shutdown
BGP neighbor와 통신 비활성화
Timer setting
BGP 프로세스마다 BGP Timer의 기본 값 변경 가능
BGP Open message를 통해 holdtime이 통신됨
가장 작은 holdtime 값이 양쪽 피어 모두에 사용됨
특정 neighbor나 피어 그룹에 BGP 기본 값을 변경할 수 있음
특정 BGP 세션마다 MD5 인증 설정 가능
두 라우터 사이의 패스워드 문자열은 반드시 같아야 함
Announcing Networks in BGP
관리자가 직접 설정한 네트워크만 BGP에 홍보됨
수동적으로 구성된 네트워크는 홍보됨
IGP에서 재분배 사용
prefix 요약을 홍보하기 위해 aggregation 사용
auto-summary
BGP Table 삽입 이전에 network 요약이 활성화 되거나 비활성화됨
지역적으로 삽입된 네트워크(network 명령어를 사용)
재분배 경로
기본적으로 활성화된 상태
Major Network
BGP로 major network의 홍보를 허용
적어도 서브넷 중 하나가 라우팅 테이블에 존재해야 함
auto-summary 명령어의 존재에 따라 동작이 바뀜
BGP의 network 명령어는 다른 모든 라우팅 프로토콜과 완벽히 다름
Redistributing
큰 네트워크에서 BGP 프로세스 네트워크에 주소를 올리는 것보다 쉬움
재분배 경로 origin attribute는 incomplete
경로 유출을 막기 위해 항상 재분배 경로는 필터링
Service Provider 환경에서는 피해야 함
간단한 IGP-BGP 재분배
Distributed-List를 통해 경로 필터
Route-Maps를 이용한 재분배
근원지는 IGP로 설정
다른 BGP 경로 속성은 아래 항목으로 설정됨
Metric
Next-hop
Community
Classless BGP 구성
Aggregation
BGP 라우팅 프로세스 집합 범위 정의
BGP 테이블에서 범위가 설정되어 있는 네트워크가 적어도 하나라도 있을 경우 집합이 홍보됨
LAB_BGP
토폴로지
조건
RIP와 OSPF로 라우팅
단, 외부 본인 Area 내부와 라우팅시키고 외부로는 Routing X
BGP 설정 추가(다른 AS끼리 Neighbor 관계 맺기)
Jin_Hahha
팔로우
이전 포스트
[CISCO 보안 아카데미 1기 Part.2] 10일차 정리(ACL, Distributed-list, PBR, NAT)
다음 포스트
[CISCO 보안 아카데미 1기 Part.2] 13일차 정리(BGP 2)
0개의 댓글
댓글 작성