CSS 1타 강사 · CONCEPT 11/25
BGP router는 여러 경로 중 무엇을 먼저 보고 선택할까요?
BGP announcement는 destination prefix와 AS_PATH 등을 전달합니다. Router는 먼저 가장 구체적인 prefix(longest-prefix match)를 보고, 같은 prefix 후보 안에서는 policy와 AS_PATH 등을 비교합니다. 잘못된 origin이나 path 정보가 퍼지면 hijack이 생깁니다.
전문 용어를 보기 전에 이 장면부터 잡으세요
‘서울 전체는 A길’보다 ‘특정 골목은 B길’이라는 더 구체적인 표지판이 우선하는 것과 같습니다.
인터넷 사업자들이 어느 길로 갈지 알리는 프로토콜
00
한 장면으로 문제를 시작해 봅시다
이번 페이지에서 끝까지 따라갈 예시
한 router가 1.1.0.0/16 경로와 그 안에 포함되는 1.1.1.0/24 경로를 동시에 알고 있다고 가정합니다.
비유와 실제 시스템을 정확히 연결하기
- 도시 전체 안내판덜 구체적인 /16 prefix
- 특정 골목 안내판더 구체적인 /24 prefix
- 거쳐 온 도시 목록AS_PATH
이 예시에서 사람·장치·데이터·화살표를 먼저 찾습니다. 아직 용어를 완벽히 몰라도 “누가 무엇을 가지고, 어떤 처리를 거쳐, 무엇이 달라지는가”를 말할 수 있으면 출발점은 충분합니다.
01
긴 이름을 작은 용어로 분리하기
한 제목에 여러 단어가 들어 있어도 같은 기능을 뜻하지 않습니다. 아래 카드를 하나씩 읽고 각 용어의 대상과 역할을 따로 잡으세요.
Internet의 길 안내: AS, prefix, BGP announcement
Internet은 하나의 네트워크가 아니라 Autonomous System(AS)이라는 큰 네트워크들의 연결이다. IP prefix는 10.10.10.0/24처럼 연속된 주소 범위를 나타내며 /24는 앞의 24개 bit가 같은 주소들을 하나의 네트워크로 묶는다는 뜻이다. BGP는 AS끼리 ‘이 prefix로 가려면 나를 거쳐라’라는 경로 정보를 교환하는 protocol이다. Announcement에는 목적지 prefix, 경로에 포함된 AS들의 AS_PATH, next hop과 여러 route attribute가 들어갈 수 있다.
TERMS FROM ZERO
Internet의 길 안내: AS, prefix, BGP announcement 핵심 용어
아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.
Autonomous System
하나의 관리 정책 아래 운영되는 IP network 집합이며 AS 번호로 식별됩니다.
Prefix
`203.0.113.0/24`처럼 연속된 IP 주소 범위를 나타냅니다.
BGP announcement
어떤 prefix로 가는 route와 path 정보를 이웃 AS에 알리는 message입니다.
AS_PATH
해당 route가 거쳐 온 AS 번호의 순서로 loop 방지와 route 선택에 사용됩니다.
BGP hijack과 longest-prefix routing
BGP hijack은 권한 없는 AS가 다른 조직의 IP prefix에 도달할 수 있다고 광고해 traffic을 잘못 끌어오는 공격이다. Router는 여러 경로가 있을 때 먼저 목적지 IP와 가장 긴 prefix가 일치하는 longest-prefix match를 적용한다. /28은 /24보다 더 구체적인 작은 범위이므로 겹치는 주소에 대해서는 /28 경로가 선택된다.
TERMS FROM ZERO
BGP hijack과 longest-prefix routing 핵심 용어
아래 단어는 이미 안다고 가정하지 않습니다. 먼저 쉬운 뜻을 읽고, 본문에서 같은 단어가 나오면 이 정의로 다시 바꾸어 읽으세요.
BGP hijack
잘못되거나 악의적인 route announcement로 traffic이 다른 AS로 향하게 되는 사건입니다.
Longest-prefix match
Router가 목적지 IP를 포함하는 route 중 가장 구체적인 prefix를 우선하는 forwarding 규칙입니다.
Origin AS
BGP path에서 해당 prefix를 최초로 광고한 AS입니다.
RPKI / ROV
어떤 AS가 prefix를 origin으로 광고할 권한이 있는지 검증하는 체계와 절차입니다.
02
실제 시스템에서는 이 순서로 움직입니다
예시를 단계별로 해체하기
- 1단계각 AS가 자신이 도달 가능한 prefix와 AS_PATH를 neighbor에게 announcement합니다.
- 2단계Destination IP와 일치하는 prefix 후보를 모읍니다.
- 3단계가장 구체적인 prefix인 longest-prefix match를 먼저 적용합니다.
- 4단계같은 prefix에 대한 여러 route 안에서 policy와 AS_PATH 등 BGP 속성을 비교합니다.
- 5단계공격자가 더 구체적인 prefix나 잘못된 origin을 퍼뜨리면 traffic이 hijack될 수 있습니다.
- 6단계RPKI/ROV는 origin, BGPSec은 path 검증에 초점이 다릅니다.
이 단계들은 시험 답안에서 원인과 결과가 빠지지 않도록 만든 설명 순서입니다.
손으로 따라가는 초보 예제
`1.1.1.42`가 /16보다 /24로 가는 이유
Router table에 `1.1.0.0/16 → AS10`과 `1.1.1.0/24 → AS20`이 동시에 있습니다.
- 1단계Destination `1.1.1.42`는 /16과 /24 두 prefix에 모두 포함됩니다.
- 2단계Forwarding은 더 구체적인 /24 longest-prefix match를 선택합니다.
- 3단계따라서 AS_PATH가 더 길더라도 서로 다른 prefix 길이 비교에서는 /24가 먼저입니다.
- 4단계같은 /24에 여러 BGP route가 있을 때 local policy, AS_PATH 등의 속성을 비교합니다.
- 5단계공격자가 무단으로 더 구체적인 /25를 광고하면 일부 traffic이 공격자 쪽으로 갈 수 있습니다.
- 6단계RPKI/ROV는 origin 권한을 검증하지만 전체 path의 모든 거짓을 자동 검증하지는 않습니다.
그래서 무엇을 배웠나? Longest-prefix match와 BGP path selection은 서로 다른 단계입니다. 먼저 destination에 가장 구체적인 prefix, 그다음 같은 prefix의 route 속성을 봅니다.
03
관련 개념도 하나씩 따로 이해하기
Internet의 길 안내: AS, prefix, BGP announcement
비유에서 실제 시스템으로 옮겨 보기
먼저 떠올릴 장면 · 각 AS를 도시, prefix를 동네, BGP announcement를 ‘이 동네로 가는 길은 우리 도시를 통과한다’는 안내판으로 생각하면 된다.
정확한 뜻 · Internet은 하나의 네트워크가 아니라 Autonomous System(AS)이라는 큰 네트워크들의 연결이다. IP prefix는 10.10.10.0/24처럼 연속된 주소 범위를 나타내며 /24는 앞의 24개 bit가 같은 주소들을 하나의 네트워크로 묶는다는 뜻이다. BGP는 AS끼리 ‘이 prefix로 가려면 나를 거쳐라’라는 경로 정보를 교환하는 protocol이다. Announcement에는 목적지 prefix, 경로에 포함된 AS들의 AS_PATH, next hop과 여러 route attribute가 들어갈 수 있다.
- 1단계목적지 prefix가 무엇인지 찾는다.
- 2단계누가 origin AS라고 주장하는지 확인한다.
- 3단계AS_PATH가 어떤 순서의 AS를 나타내는지 읽는다.
- 4단계기본 BGP 정보가 항상 진실이라고 암호학적으로 보장되지는 않음을 기억한다.
BGP hijack과 longest-prefix routing
비유에서 실제 시스템으로 옮겨 보기
먼저 떠올릴 장면 · ‘서울로 가는 길’ 안내와 ‘서울 101번 건물로 가는 길’ 안내가 동시에 있으면 101번 건물에는 더 구체적인 두 번째 안내를 따르는 것과 같다.
정확한 뜻 · BGP hijack은 권한 없는 AS가 다른 조직의 IP prefix에 도달할 수 있다고 광고해 traffic을 잘못 끌어오는 공격이다. Router는 여러 경로가 있을 때 먼저 목적지 IP와 가장 긴 prefix가 일치하는 longest-prefix match를 적용한다. /28은 /24보다 더 구체적인 작은 범위이므로 겹치는 주소에 대해서는 /28 경로가 선택된다.
- 1단계정상 prefix와 공격자가 광고한 prefix를 비교한다.
- 2단계목적지 주소에 두 prefix가 모두 일치하는지 본다.
- 3단계일치하면 prefix length가 더 긴 route를 선택한다.
- 4단계길이가 같으면 local preference, AS path 등 추가 BGP 정책을 본다.
04
강의 스크립트 원본과 연결하기
BGP announcement·longest prefix·hijacking 사례를 보여 주는 대표 슬라이드입니다. 먼저 위의 초보 설명을 읽고, 원본에서는 같은 개념이 어떤 기호와 독일어·영어 용어로 표현되는지 확인하세요.
Vorlesung/07 Border Gateway Protocol.pdf · p.15, p.16, p.28 · BGP announcement·longest prefix·hijacking 사례07 Border Gateway Protocol.pdf· p.15, p.16, p.28
05
시험 함정과 답안에 적용하기
- Internet의 길 안내: AS, prefix, BGP announcement · BGP message가 정상 형식이라는 사실과 그 안의 경로 주장이 사실이라는 것은 별개다.
- BGP hijack과 longest-prefix routing · AS_PATH가 짧다는 이유만 보기 전에 longest-prefix match가 먼저 경로 후보를 결정한다는 점을 확인한다.
서술형 답안 골격
announcement를 먼저 적고 각 destination prefix별 선택 route와 선택 이유를 routing table에 한 줄씩 씁니다.
정의 → 등장 주체 또는 입력 → 작동 순서 → 보안 효과 → 조건과 한계 순서로 쓰고, 위 단계별 예시에서 필요한 문장을 골라 붙이세요.
책을 덮고 “BGP router는 여러 경로 중 무엇을 먼저 보고 선택할까요?”에 대해 핵심 용어 두 개, 작동 단계 세 개, 대표 함정 하나를 말해 보세요.
다음 개념으로 넘어가기 전 확인
- `1.1.1.42`는 두 prefix 중 어디에 더 구체적으로 속하는가?
- 더 짧은 AS_PATH와 더 긴 prefix 중 무엇을 먼저 비교하는가?
- RPKI/ROV가 주로 검증하는 것은?