资源公钥基础设施是防止BGP劫持的一种方法。它使用密码签名来验证允许ASN宣布特定子网。
路由发起授权是RPKI的关键组成部分。ROAs只包含几个条目:ASN、子网和最大长度。然后,ROA经过加密签名并公开发布。然后,任何路由器都可以使用ROA来验证某个特定公告是由IP空间的所有者授权的。
{ "asn" : "AS64496", "prefix" : "192.0.2.0/24", "maxLength" : 29, "ta" : "ARIN"}
声明ASAS64496被授权宣布192.0.2.0/24和任何小于/29s的小子网。与此相反,下面只允许AS64496准确地宣布192.0.2.0/24。这个范围内的小子网将不被允许。
{ "asn" : "AS64496", "prefix" : "192.0.2.0/24", "maxLength" : 24, "ta" : "ARIN"}
成熟提供了一种公共服务,您可以在其中查找个人ROAs。VPS每晚都会检查每个客户子网的RPKI状态。您可以在这里查看状态。这里有几个不同的州:有效:我们能够验证ASN/prefix对的ROA存在。这是你想要的状态。
未知:给定前缀不存在ROA。这就是你将看到的绝大多数空间。你一般不会看到这个状态有任何问题,因为现在没有任何isp真正要求RPKI。
这些状态可能导致您的IP空间对internet的各个部分不可用,并且应该得到纠正。值得注意的是,您可能无法使用无效的RPKI签名从IP空间访问Cloudflare:无效的ASN:这个前缀至少有一个ROA存在,但是没有一个ASNs匹配您的帐户的配置。如果您使用的是私有ASN,那么ROAs应该列出我们的ASN(20473)。
无效的前缀长度:我们发现一个与这个前缀/ASN匹配的ROA,但是最大允许的前缀长度是不正确的。这通常意味着您需要发出一个新的ROA,最大前缀长度设置为IPv4的24或IPv6的48。您还可以为较小的前缀发出新的ROA。
RPKI可以通过您的加入设置。只有IP空间的所有者才能管理RPKI ROAs。如果您正在租用IP空间,您需要联系您租用的公司,以协助配置RPKI。