idnits 2.17.1 draft-ietf-sidr-origin-ops-09.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == There are 3 instances of lines with private range IPv4 addresses in the document. If these are generic example addresses, they should be changed to use any of the ranges defined in RFC 6890 (or successor): 192.0.2.x, 198.51.100.x or 203.0.113.x. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The exact meaning of the all-uppercase expression 'MAY NOT' is not defined in RFC 2119. If it is intended as a requirements expression, it should be rewritten using one of the combinations defined in RFC 2119; otherwise it should not be all-uppercase. == The expression 'MAY NOT', while looking like RFC 2119 requirements text, is not defined in RFC 2119, and should not be used. Consider using 'MUST NOT' instead (if that is what you mean). Found 'MAY NOT' in this paragraph: When using a metric which is also influenced by other local policy, the operator should be careful not to create privilege upgrade vulnerabilities. E.g. if Local Pref is set depending on validity state, be careful that peer community signaling MAY NOT upgrade an invalid announcement to valid or better. -- The document date (May 23, 2011) is 4716 days in the past. Is this intentional? Checking references for intended status: Best Current Practice ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Outdated reference: A later version (-13) exists of draft-ietf-sidr-arch-12 ** Downref: Normative reference to an Informational draft: draft-ietf-sidr-arch (ref. 'I-D.ietf-sidr-arch') == Outdated reference: A later version (-09) exists of draft-ietf-sidr-repos-struct-07 == Outdated reference: A later version (-12) exists of draft-ietf-sidr-roa-format-10 == Outdated reference: A later version (-26) exists of draft-ietf-sidr-rpki-rtr-11 == Outdated reference: A later version (-10) exists of draft-ietf-sidr-pfx-validate-01 == Outdated reference: A later version (-16) exists of draft-ietf-sidr-ghostbusters-03 == Outdated reference: A later version (-08) exists of draft-ietf-sidr-ltamgmt-00 Summary: 1 error (**), 0 flaws (~~), 10 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group R. Bush 3 Internet-Draft Internet Initiative Japan 4 Intended status: BCP May 23, 2011 5 Expires: November 24, 2011 7 RPKI-Based Origin Validation Operation 8 draft-ietf-sidr-origin-ops-09 10 Abstract 12 Deployment of RPKI-based BGP origin validation has many operational 13 considerations. This document attempts to collect and present them. 14 It is expected to evolve as RPKI-based origin validation is deployed 15 and the dynamics are better understood. 17 Requirements Language 19 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 20 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 21 document are to be interpreted as described in RFC 2119 [RFC2119]. 23 Status of this Memo 25 This Internet-Draft is submitted in full conformance with the 26 provisions of BCP 78 and BCP 79. 28 Internet-Drafts are working documents of the Internet Engineering 29 Task Force (IETF). Note that other groups may also distribute 30 working documents as Internet-Drafts. The list of current Internet- 31 Drafts is at http://datatracker.ietf.org/drafts/current/. 33 Internet-Drafts are draft documents valid for a maximum of six months 34 and may be updated, replaced, or obsoleted by other documents at any 35 time. It is inappropriate to use Internet-Drafts as reference 36 material or to cite them other than as "work in progress." 38 This Internet-Draft will expire on November 24, 2011. 40 Copyright Notice 42 Copyright (c) 2011 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (http://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the Simplified BSD License. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 2. Suggested Reading . . . . . . . . . . . . . . . . . . . . . . . 3 59 3. RPKI Distribution and Maintenance . . . . . . . . . . . . . . . 3 60 4. Within a Network . . . . . . . . . . . . . . . . . . . . . . . 5 61 5. Routing Policy . . . . . . . . . . . . . . . . . . . . . . . . 5 62 6. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 63 7. Security Considerations . . . . . . . . . . . . . . . . . . . . 7 64 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 65 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 7 66 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7 67 10.1. Normative References . . . . . . . . . . . . . . . . . . . 7 68 10.2. Informative References . . . . . . . . . . . . . . . . . . 8 69 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8 71 1. Introduction 73 RPKI-based origin validation relies on widespread propagation of the 74 Resource Public Key Infrastructure (RPKI) [I-D.ietf-sidr-arch]. How 75 the RPKI is distributed and maintained globally is a serious concern 76 from many aspects. 78 The global RPKI is in very initial stages of deployment, there is no 79 root trust anchor, initial testing is being done by the IANA and some 80 RIRs, and there is a technical testbed. It is thought that origin 81 validation based on the RPKI will be deployed incrementally over the 82 next year to five years. 84 Origin validation only need be done by an AS's border routers and is 85 designed so that it can be used to protect announcements which are 86 originated by large providers, upstreams and down-streams, and by 87 small stub/enterprise/edge routers. 89 Origin validation has been designed to be deployed on current routers 90 without significant hardware upgrade. It should be used by everyone 91 from large backbones to small stub/entetprise/edge routers. 93 RPKI-based origin validation has been designed so that, with prudent 94 local routing policies, there is little risk that what is seen as 95 today's normal Internet routing is threatened by imprudent deployment 96 of the global RPKI, see Section 5. 98 2. Suggested Reading 100 It is assumed that the reader understands BGP, [RFC4271], the RPKI, 101 see [I-D.ietf-sidr-arch], the RPKI Repository Structure, see 102 [I-D.ietf-sidr-repos-struct], ROAs, see [I-D.ietf-sidr-roa-format], 103 the RPKI to Router Protocol, see [I-D.ietf-sidr-rpki-rtr], RPKI-based 104 Prefix Validation, see [I-D.ietf-sidr-pfx-validate], and Ghostbuster 105 Records, see [I-D.ietf-sidr-ghostbusters]. 107 3. RPKI Distribution and Maintenance 109 The RPKI is a distributed database containing certificates, CRLs, 110 manifests, ROAs, and Ghostbuster Records as described in 111 [I-D.ietf-sidr-repos-struct]. Policies and considerations for RPKI 112 object generation and maintenance are discussed elsewhere. 114 A local valid cache containing all RPKI data may be gathered from the 115 global distributed database using the rsync protocol and a validation 116 tool such as rcynic. 118 Validated caches may also be created and maintained from other 119 validated caches. Network operators SHOULD take maximum advantage of 120 this feature to minimize load on the global distributed RPKI 121 database. 123 As RPKI-based origin validation relies on the availability of RPKI 124 data, operators SHOULD locate caches close to routers that require 125 these data and services. A router can peer with one or more nearby 126 caches. 128 For redundancy, a router SHOULD peer with more than one cache at the 129 same time. Peering with two or more, at least one local and others 130 remote, is recommended. 132 If an operator trusts upstreams to carry their traffic, they SHOULD 133 also trust the RPKI data those upstreams cache, and SHOULD peer with 134 those caches. Note that this places an obligation on those upstreams 135 to maintain fresh and reliable caches. 137 A transit provider or a network with peers SHOULD validate origins in 138 announcements made by upstreams, down-streams, and peers. They still 139 SHOULD trust the caches provided by their upstreams. 141 Before issuing a ROA for a block, an operator MUST ensure that any 142 sub-allocations from that block which are announced by other ASs, 143 e.g. customers, have correct ROAs in play. Otherwise, issuing a ROA 144 for the super-block will cause the announcements of sub-allocations 145 with no ROAs to be Invalid. 147 Use of RPKI-based origin validation removes any need to originate 148 more specifics to protect against mis-origination of a less specific 149 prefix. Having a ROA for the covering prefix should protect it. 151 To aid translation of ROAs into efficient search algorithms in 152 routers, ROAs SHOULD be as precise as possible, i.e. match prefixes 153 as announced in BGP. E.g. software and operators SHOULD avoid use of 154 excessive max length values in ROAs unless operationally necessary. 156 One advantage of minimal ROA length is that the forged origin attack 157 does not work for sub-prefixes that are not covered by overly long 158 max length. E.g. if, instead of 10.0.0.0/16-24, one issues 159 10.0.0.0/16 and 10.0.42.0/24, a forged origin attack can not succeed 160 against 10.0.66.0/24. They must attack the whole /16, which is more 161 likely to be noticed. 163 Therefore, ROA generation software MUST use the prefix length as the 164 max length if the user does not specify a max length. 166 Operators SHOULD be conservative in use of max length in ROAs. E.g., 167 if a prefix will have only a few sub-prefixes announced, multiple 168 ROAs for the specific announcements SHOULD be used as opposed to one 169 ROA with a long max length. 171 An environment where private address space is announced in eBGP the 172 operator MAY have private RPKI objects which cover these private 173 spaces. This will require a trust anchor created and owned by that 174 environment, see [I-D.ietf-sidr-ltamgmt]. 176 Operators issuing ROAs may have customers announce their own prefixes 177 and ASs into global eBGP but who do not wish to go though the work to 178 manage the relevant certificates and ROAs. The operator SHOULD 179 provision the RPKI data for these customers just as they provision 180 many other things for them. 182 While a an operator using RPKI data MAY choose any frequency they 183 wish for ensuring they have a fresh RPKI cache, if they use RPKI data 184 as an input to operational routing decisions, they SHOULD ensure 185 local cache freshness at least every four to six hours. 187 4. Within a Network 189 Origin validation need only be done by edge routers in a network, 190 those which border other networks/ASs. 192 A validating router will use the result of origin validation to 193 influence local policy within its network, see Section 5. In 194 deployment this policy should fit into the AS's existing policy, 195 preferences, etc. This allows a network to incrementally deploy 196 validation capable border routers. 198 eBGP speakers which face more critical peers or up/down-streams would 199 be candidates for the earliest deployment. Validating more critical 200 received announcements should be considered in partial deployment. 202 5. Routing Policy 204 Origin validation based on the RPKI merely marks a received 205 announcement as having an origin which is Valid, NotFound, or 206 Invalid. See [I-D.ietf-sidr-pfx-validate]. How this is used in 207 routing SHOULD be specified by the operator's local policy. 209 Local policy using relative preference is suggested to manage the 210 uncertainty associated with a system in early deployment, applying 211 local policy to eliminate the threat of unroutability of prefixes due 212 to ill-advised certification policies and/or incorrect certification 213 data. E.g. until the community feels comfortable relying on RPKI 214 data, routing on Invalid origin validity, though at a low preference, 215 MAY occur. 217 As origin validation will be rolled out incrementally, coverage will 218 be incomplete for a long time. Therefore, routing on NotFound 219 validity state SHOULD be done for a long time. As the transition 220 moves forward, the number of BGP announcements with validation state 221 NotFound should decrease. Hence an operator's policy SHOULD NOT be 222 overly strict, preferring Valid announcements, attaching a lower 223 preference to, but still using, NotFound announcements, and dropping 224 or giving very low preference to Invalid announcements. 226 Some may choose to use the large Local-Preference hammer. Others 227 might choose to let AS-Path rule and set their internal metric, which 228 comes after AS-Path in the BGP decision process. 230 When using a metric which is also influenced by other local policy, 231 the operator should be careful not to create privilege upgrade 232 vulnerabilities. E.g. if Local Pref is set depending on validity 233 state, be careful that peer community signaling MAY NOT upgrade an 234 invalid announcement to valid or better. 236 Announcements with Valid origins SHOULD be preferred over those with 237 NotFound or Invalid origins, if the latter are accepted at all. 239 Announcements with NotFound origins SHOULD be preferred over those 240 with Invalid origins. 242 Announcements with Invalid origins MAY be used, but SHOULD be less 243 preferred than those with Valid or NotFound. 245 6. Notes 247 Like the DNS, the global RPKI presents only a loosely consistent 248 view, depending on timing, updating, fetching, etc. Thus, one cache 249 or router may have different data about a particular prefix than 250 another cache or router. There is no 'fix' for this, it is the 251 nature of distributed data with distributed caches. 253 There is some uncertainty about the origin AS of aggregates and what, 254 if any, ROA can be used. The long range solution to this is the 255 deprecation of AS-SETs, see [I-D.wkumari-deprecate-as-sets]. 257 Operators which manage certificates SHOULD have RPKI Ghostbuster 258 Records (see [I-D.ietf-sidr-ghostbusters]), signed indirectly by End 259 Entity certificates, for those certificates on which others' routing 260 depends for certificate and/or ROA validation. 262 7. Security Considerations 264 As the BGP origin is not signed, origin validation is open to 265 malicious spoofing. It is only designed to deal with inadvertent 266 mis-advertisement. 268 Origin validation does not address the problem of AS-Path validation. 269 Therefore paths are open to manipulation, either malicious or 270 accidental. 272 The data plane may not follow the control plane. 274 Be aware of the class of privilege escalation issues discussed in 275 Section 5 above. 277 8. IANA Considerations 279 This document has no IANA Considerations. 281 9. Acknowledgments 283 The author wishes to thank Rob Austein, Steve Bellovin, Pradosh 284 Mohapatra, Chris Morrow, Sandy Murphy, Keyur Patel, Heather and Jason 285 Schiller, John Scudder, Kotikalapudi Sriram, Maureen Stillman, and 286 Dave Ward. 288 10. References 290 10.1. Normative References 292 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 293 Requirement Levels", BCP 14, RFC 2119, March 1997. 295 [I-D.ietf-sidr-arch] 296 Lepinski, M. and S. Kent, "An Infrastructure to Support 297 Secure Internet Routing", draft-ietf-sidr-arch-12 (work in 298 progress), February 2011. 300 [I-D.ietf-sidr-repos-struct] 301 Huston, G., Loomans, R., and G. Michaelson, "A Profile for 302 Resource Certificate Repository Structure", 303 draft-ietf-sidr-repos-struct-07 (work in progress), 304 February 2011. 306 [I-D.ietf-sidr-roa-format] 307 Lepinski, M., Kent, S., and D. Kong, "A Profile for Route 308 Origin Authorizations (ROAs)", 309 draft-ietf-sidr-roa-format-10 (work in progress), 310 February 2011. 312 [I-D.ietf-sidr-rpki-rtr] 313 Bush, R. and R. Austein, "The RPKI/Router Protocol", 314 draft-ietf-sidr-rpki-rtr-11 (work in progress), 315 March 2011. 317 [I-D.ietf-sidr-pfx-validate] 318 Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R. 319 Austein, "BGP Prefix Origin Validation", 320 draft-ietf-sidr-pfx-validate-01 (work in progress), 321 February 2011. 323 [I-D.ietf-sidr-ghostbusters] 324 Bush, R., "The RPKI Ghostbusters Record", 325 draft-ietf-sidr-ghostbusters-03 (work in progress), 326 March 2011. 328 [I-D.ietf-sidr-ltamgmt] 329 Kent, S. and M. Reynolds, "Local Trust Anchor Management 330 for the Resource Public Key Infrastructure", 331 draft-ietf-sidr-ltamgmt-00 (work in progress), 332 November 2010. 334 10.2. Informative References 336 [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway 337 Protocol 4 (BGP-4)", RFC 4271, January 2006. 339 [I-D.wkumari-deprecate-as-sets] 340 Kumari, W., "Deprecation of BGP AS_SET, AS_CONFED_SET.", 341 draft-wkumari-deprecate-as-sets-01 (work in progress), 342 September 2010. 344 Author's Address 346 Randy Bush 347 Internet Initiative Japan 348 5147 Crystal Springs 349 Bainbridge Island, Washington 98110 350 US 352 Phone: +1 206 780 0431 x1 353 Email: randy@psg.com