RFC 8481
Clarifications to BGP Origin Validation Based on Resource Public Key Infrastructure (RPKI)
RFC 8481: Clarifications to BGP Origin Validation Based on Resource Public Key Infrastructure (RPKI) β¨
Bestie, this one is a clarification doc, and it's giving "we fixed the vibes before they got messy" π
Who wrote it: Randy Bush, from Internet Initiative Japan πΈ Stream: IETF π¦ Category: Standards Track π Date: September 2018 π Updates: RFC 6811 π§ ISSN: 2070-1721 π§
Abstract π
okay so, rolling out BGP origin validation based on RPKI is being slowed down by vendors implementing it differently in two key spots: which routes get validated, and whether policy gets applied when the configuration never asked for it. This doc clears up the confusion behind those mismatches. It updates RFC 6811 by making clear that all prefixes should have their validation state set, and that policy must not be applied without operator configuration. π
Status of This Memo β¨
This is an Internet Standards Track document. π
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It went through public review and got approved for publication by the Internet Engineering Steering Group (IESG). More info on Internet Standards is in Section 2 of RFC 7841. π
You can find the current status, any errata, and how to send feedback at https://www.rfc-editor.org/info/rfc8481. π
Copyright Notice π
Copyright (c) 2018 IETF Trust and the persons identified as the document authors. All rights reserved. π¦
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) as they stand on the publication date. Please read these carefully, because they spell out your rights and restrictions for this document. Code Components pulled out of this document must include the Simplified BSD License text described in Section 4.e of the Trust Legal Provisions, and they come without warranty, as described in the Simplified BSD License. βοΈ
Table of Contents πΊοΈ
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3
3. Suggested Reading . . . . . . . . . . . . . . . . . . . . . . 3
4. Evaluate ALL Prefixes . . . . . . . . . . . . . . . . . . . . 3
5. Set State, Don't Act . . . . . . . . . . . . . . . . . . . . 4
6. Security Considerations . . . . . . . . . . . . . . . . . . . 4
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
8. Normative References . . . . . . . . . . . . . . . . . . . . 4
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 5
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 5
1. Introduction πΈ
So deploying RPKI-based BGP origin validation is getting held up by vendors misimplementing it in two critical areas: which routes are validated, and whether policy is applied when the configuration never specified it. This doc is here to clear up the possible misunderstandings causing those mismatches. π
When a route gets distributed into BGP, its origin validation state is set to NotFound, Valid, or Invalid, per [RFC6811]. Operational testing showed that the specs in that RFC weren't enough to stop implementations from diverging. This document tries to clarify two areas that seem to be causing the confusion. β¨
The implementation problems don't really seem to be about how to validate, meaning how to decide if a route is NotFound, Valid, or Invalid. The actual questions are which routes should be evaluated and have their evaluation state set, and whether to apply policy without operator configuration. π€
2. Requirements Language π
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. π§
3. Suggested Reading π
It's assumed you already get BGP [RFC4271], the RPKI [RFC6480], Route Origin Authorizations (ROAs) [RFC6482], and RPKI-based Prefix Validation [RFC6811]. No pressure, but these are the good reads. π
4. Evaluate ALL Prefixes π₯
Significant Clarification: A router MUST evaluate and set the validation state of all routes in BGP coming from any source (e.g., eBGP, iBGP, or redistribution from static or connected routes), unless specifically configured otherwise by the operator.
Here's why this matters, bestie. If the router doesn't do this, the operator can't drop Invalid routes coming from every possible source. That leaves them open to complaints from neighbors about Invalid routes getting propagated. π So [RFC6811] says:
When a BGP speaker receives an UPDATE from a neighbor, it SHOULD perform a lookup as described above for each of the Routes in the UPDATE message. The lookup SHOULD also be applied to routes that are redistributed into BGP from another source, such as another protocol or a locally defined static route.
[RFC6811] goes on to say, "An implementation MAY provide configuration options to control which routes the lookup is applied to." π
When you redistribute into BGP from any source (e.g., IGP, iBGP, or from static or connected routes), the input has no AS_PATH, so there's nothing to let you do RPKI validation of the originating Autonomous System (AS). π«Ά In those cases, the router MUST use the AS from the router's BGP configuration. If that's ambiguous because of confederation, AS migration, or other multi-AS configuration, then the router configuration MUST provide a means of specifying the AS to be used on the redistribution, either per redistribution or globally. π
5. Set State, Don't Act π
Significant Clarification: Once routes are evaluated and have their state set, the operator should be in complete control of any policy applied based on the evaluation state. Absent specific operator configuration, policy MUST NOT be applied.
Automatic origin validation policy actions, like the ones described in "BGP Prefix Origin Validation State Extended Community" [RFC8097], MUST NOT be carried out or otherwise applied unless the operator specifically configures them. π ββοΈ The operator is the one in charge here, always. π
6. Security Considerations π
This document doesn't create any security considerations beyond the ones in [RFC6811]. π
7. IANA Considerations π§
This document has no IANA actions. β¨
8. Normative References π
- [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997,
https://www.rfc-editor.org/info/rfc2119. - [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI 10.17487/RFC4271, January 2006,
https://www.rfc-editor.org/info/rfc4271. - [RFC6480] Lepinski, M. and S. Kent, "An Infrastructure to Support Secure Internet Routing", RFC 6480, DOI 10.17487/RFC6480, February 2012,
https://www.rfc-editor.org/info/rfc6480. - [RFC6482] Lepinski, M., Kent, S., and D. Kong, "A Profile for Route Origin Authorizations (ROAs)", RFC 6482, DOI 10.17487/RFC6482, February 2012,
https://www.rfc-editor.org/info/rfc6482. - [RFC6811] Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R. Austein, "BGP Prefix Origin Validation", RFC 6811, DOI 10.17487/RFC6811, January 2013,
https://www.rfc-editor.org/info/rfc6811. - [RFC8097] Mohapatra, P., Patel, K., Scudder, J., Ward, D., and R. Bush, "BGP Prefix Origin Validation State Extended Community", RFC 8097, DOI 10.17487/RFC8097, March 2017,
https://www.rfc-editor.org/info/rfc8097. - [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017,
https://www.rfc-editor.org/info/rfc8174.
Acknowledgments π«Ά
Huge thanks to John Scudder, who was patient enough to give constructive review multiple times, and to Keyur Patel, who noticed the AS might have to be specified. George Michaelson, Jay Borkenhagen, John Heasley, and Matthias Waehlisch kindly helped tidy up the loose wording. π
Author's Address π¦
Randy Bush Internet Initiative Japan 5147 Crystal Springs Bainbridge Island, Washington 98110 United States of America
Email: randy@psg.com π
π¦ where this page comes from
- ietf: rfc8481 2018-09
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms