요약
- RFC 3704는 엄격한 역방향 경로 전달이 해당 발신지로 돌아가는 최적 경로가 선택하는 인터페이스로 패킷이 도착하기를 기대할 때, 인그레스 필터가 정상 발신지를 거부할 수 있음을 보여주었다.
- 실현 가능 경로 검사는 알려진 대안 경로를 허용할 수 있지만, 관련 경로가 일관되게 사용 가능할 때에만 그렇다. 느슨한 검사는 비대칭을 허용하지만, 발신지 필터를 유용하게 만드는 방향성 증거의 대부분을 포기하는 대가를 치른다.
라우터는 되돌아오는 경로를 판정했다
멀티홈 네트워크가 공급자 B를 통해 패킷을 내보내는 장면을 상상해 보자. 이 패킷은 발신자가 사용할 권한이 있는 주소를 담고 있다. 더 멀리 있는 라우터가 B 방향 인터페이스로 이를 수신하고, 그 발신 주소를 조회한 뒤, 자신이 선호하는 되돌아가는 경로가 공급자 A 쪽을 가리킨다는 것을 발견한다. 엄격한 역방향 경로 전달(RPF)에서는 이 패킷이 실패한다. 필터는 도착 인터페이스를 자신의 포워딩 테이블에 있는 경로와 비교했을 뿐, 패킷의 발신자를 독립적으로 확인한 것은 아니다.
발신지의 정당성과 경로 대칭성 사이의 이 간극이 2004년 3월 RFC 3704가 다룬 문제다. 최우선 실천 방침(BCP) 84로 발표된 이 문서는 네트워크 인그레스 필터링에 관한 이전 권고인 RFC 2827을 갱신했다. 보안 목표는 에지 사이트가 여러 공급자를 사용하더라도 사라지지 않았다. 달라진 것은 라우터가 사용할 수 있는 증거였다. 패킷이 실제로 거쳐온 경로는 라우팅 시스템이 되돌아가는 트래픽을 보내기로 선택할 경로와 같을 필요가 없다는 점이다.
RFC 3704가 유용한 이유는 “RPF”를 하나의 단일 스위치로 취급하지 않기 때문이다. 인그레스 액세스 리스트는 각 패킷의 발신지를 해당 인터페이스에서 허용된 프리픽스와 비교한다. 최신 상태로 유지되면 예측 가능하지만, 수동으로 관리되는 리스트는 공급자나 프리픽스 변경에 뒤처질 수 있다. 엄격한 RPF는 같은 판단을 동적으로 수행한다. 포워딩 정보 베이스(FIB)에서 발신지를 조회하고, 선택된 경로가 사용하는 인터페이스로 도착한 경우에만 패킷을 수락한다. 이는 대칭적인 고객 에지에서 간결하고 저비용인 필터가 된다. 그러나 되돌아가는 경로가 비대칭이거나 공급자의 정책 때문에 라우터에 정당한 경로가 없을 때는 같은 단순성이 부담이 된다.
경로가 늘어나면 질문도 달라진다
실현 가능 경로 RPF는 도착을 검증할 수 있는 경로의 집합을 넓힌다. FIB의 단일 최적 경로만 사용하는 대신, 이 검사는 라우팅 또는 RPF 전용 테이블에 보관된 대체 경로를 고려할 수 있다. 멀티홈 에지에서는 이것이 다른 경로가 현재 경로 선택에서 승리했다는 이유만으로 유효한 패킷이 거부되는 것을 막을 수 있다.
그러나 경로 목록은 패킷이 운반될 수 있는 모든 경로의 지도가 아니다. RFC 3704는 실현 가능 경로 필터링이 검사를 수행하는 라우터에 일관된 광고가 도달하는 데 의존한다고 말한다. 프리픽스는 라우트 맵이나 정책 때문에 한 공급자에는 존재하고 다른 공급자에는 없을 수 있다. 광고가 필터링되면 패킷도 필터링될 수 있다. 로컬 방화벽 설정처럼 보이는 것이 실제로는 여러 관리 경계를 넘어 이루어진 제어 결정에 의존한다는 뜻이다.
느슨한 RPF는 이 트레이드오프의 반대편으로 간다. 패킷이 도착한 인터페이스를 가리키는지가 아니라 발신지로 가는 경로가 존재하기만 하는지를 묻는다. 이는 비대칭을 허용하지만, 전역적으로 라우팅되는 스푸핑된 주소가 이 검사를 만족할 수 있다. 기본 경로가 있는 경우 구현이 기본 경로를 제외하거나 신중하게 다루지 않는 한 “경로가 존재한다”는 조건은 특히 약해진다. 따라서 RFC 3704는 느슨한 검사의 가치를 고객-공급자 에지에서 제한한다. 이 검사는 라우팅되지 않은 또는 예약된 발신지 공간을 상류에서 거부하거나, 다른 네트워크가 어떤 필터링을 수행하는 것처럼 보이는지 확인하는 데 더 유용하다고 기술한다.
문서의 다른 해법들은 이 문제의 분산적 성격을 명시적으로 드러낸다. 에지는 각 공급자가 자신의 프리픽스를 전달하도록 보장할 수 있고, 적절한 경우 공급자 독립 공간과 BGP를 사용할 수 있다. 공급자 기반 주소를 사용하는 작은 네트워크는 각 발신 프리픽스를 그것을 할당한 공급자 쪽으로 조종할 수 있다. 액세스 리스트는 수동 편집 대신 고객 데이터베이스에서 생성할 수 있다. 이 선택들은 작업을 서로 다른 지점에 배치하며, 어느 것도 경로 상태를 신원으로 바꾸지는 못한다.
필터링은 그 경계만큼만 완전하다
RFC 3704는 필터링이 여러 수준에서 이루어져야 한다고도 주장한다. 첫 홉 운영자는 연결된 시스템이 사용할 수 있는 주소를 알 만큼 가까이 있다. 더 먼 라우터는 보통 발신지가 도달 가능한 프리픽스에 속할 수 있다는 사실만 확립할 수 있다. 더 멀리서의 필터링은 여전히 스푸핑된 트래픽을 줄이고 추적성을 개선할 수 있지만, 특정 공격자가 다른 곳에서 필터링되었는지 밝히거나 수락된 주소로부터 귀속을 증명할 수는 없다.
2020년에 발표된 이후의 RFC 8704는 향상된 실현 가능 경로 uRPF 방식으로 RFC 3704를 갱신했다. 그 초록은 이 긴장을 다시 진술한다. 엄격한 검사는 방향을 밀접하게 묶고, 느슨한 검사는 방향을 무시하며, 일반적인 실현 가능 경로 검사에도 여전히 한계가 있다. 그 이후의 작업은 운영 문제가 여전히 개선할 가치가 있었다는 증거이지, 특정 네트워크가 어떤 방식을 배치했다는 증거도, 모든 비대칭 토폴로지가 해결되었다는 증거도 아니다.
지속되는 교훈은 “항상 엄격하게 쓰라” 또는 “경로가 갈라지면 필터링을 끄라”가 아니다. 검사가 실제로 무엇을 알고 있는지 묻는 것이다. 선택된 하나의 되돌아가는 경로, 유지 관리되는 대안의 집합, 아니면 경로의 존재 여부만을 아는가. 하나의 검사를 통과한 패킷이 발신지가 변하지 않은 채 다른 검사에서는 실패할 수 있다. RFC 3704는 경로 뷰를 보안 판단의 일부로 만들었고, 경로 완전성을 공유 운영 책임으로 만들었다.
출처
- RFC 3704: Ingress Filtering for Multihomed Networks
- RFC 3704 record — RFC Editor
- RFC 3704 — IETF Datatracker
- RFC 3704 history — IETF Datatracker
- RFC 2827: Network Ingress Filtering
- RFC 2827 record — RFC Editor
- RFC 8704: Enhanced Feasible-Path uRPF
- RFC 8704 record — RFC Editor
- RFC 2260: Scalable Support for Multi-homed Multi-provider Connectivity
- RFC 8028: First-Hop Router Selection by Hosts in a Multi-Prefix Network
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
Strategic Circle 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





