一个 IP 段好不好,关键看它的历史。如果一个 /24 曾被用来发送垃圾邮件、仍挂在黑名单上、地理位置被识别到错误的国家,或者在没有有效 RPKI 的情况下被宣告,那么等你把网站、邮件或账号迁移上去之后,可能要花上几周时间收拾残局。本文是一份面向 IPv4 租用用户的实用尽职调查清单,无论只租几个地址还是多个 /24 段都适用:内容包括如何解读注册信息、检查路由历史与 RPKI、对比各家地理位置数据库、查询黑名单与信誉评分,以及租约中需要约定哪些条款。
# Registration record of the block (RIPE, APNIC, ARIN, AFRINIC or LACNIC answers automatically)
whois 203.0.113.0
# Fields to look at:
# inetnum / NetRange : the exact range and its size
# netname, descr : who it is assigned to
# country : the registered country (not necessarily the geolocation)
# status : ALLOCATED PA / ASSIGNED PA / LEGACY ...
# org, mnt-by : the holder and the maintainer that can change the record
# abuse-c / abuse-mailbox : where abuse reports go
出租方应当是该 IP 段的持有者,或持有该持有者的书面授权。如果你要用自己的 ASN 宣告该 IP 段,请向对方索取授权书(Letter of Authorization,LOA)(参见使用自有 ASN 宣告租用的 IP 段)。
这个 IP 段之前由谁宣告、在什么时间宣告,能说明很多问题。源 ASN 频繁变更、长期由以滥用闻名的网络宣告,或者被拆分成碎片宣告,都可能意味着隐患。
# Current origin ASN(s) and visibility (RIPEstat public API)
curl -s "https://stat.ripe.net/data/prefix-overview/data.json?resource=203.0.113.0/24" | python3 -m json.tool | head -40
# Routing history: which ASNs announced the block and when
curl -s "https://stat.ripe.net/data/routing-history/data.json?resource=203.0.113.0/24" | python3 -m json.tool | head -60
同样的信息也可以在 bgp.he.net(搜索该前缀)和 RIPEstat 网页界面中方便地查看。另外留意该 IP 段当前是否仍在宣告:长期未被路由的 IP 段,往往比每隔几个月就易手一次的 IP 段更干净。
许多网络会丢弃 RPKI 无效的路由。请确认针对将要宣告该 IP 段的 ASN 已经存在(或将会创建)ROA,并且最大前缀长度设置正确。
# Is 203.0.113.0/24 valid when announced by AS64500?
curl -s "https://stat.ripe.net/data/rpki-validation/data.json?resource=AS64500&prefix=203.0.113.0/24" | python3 -m json.tool
状态应为 valid。invalid 表示已存在针对其他 ASN 或其他前缀长度的 ROA,宣告前必须先修正;unknown 表示目前还没有 ROA 覆盖该 IP 段。详细说明见 ROA 与 RPKI 详解。
网站和平台使用的地理位置数据库来自多家服务商,它们的结果并不总是一致。请从该 IP 段中挑几个地址,在每个数据库里都查一遍。
curl -s ipinfo.io/203.0.113.10; echo
curl -s "http://ip-api.com/json/203.0.113.10?fields=country,regionName,city,isp,org,as,hosting"; echo
另外,也请到 MaxMind(maxmind.com 上的 GeoIP2 演示)、IP2Location 和 DB-IP 官网查询。如果部分数据库显示的国家不正确,请询问出租方是否发布 geofeed 并提交更正(参见通过 geofeed 修正 IP 地理位置)。如果你的业务场景依赖 IP 类型(住宅、ISP 或数据中心),请参见如何判断 IP 是原生、住宅、ISP 还是数据中心 IP。
抽查要覆盖整个 IP 段(例如 .1、.64、.128、.200、.254),不要只查第一个地址:哪怕只有一个“坏邻居”,也可能反映出整个地址段的情况。
从你业务覆盖的国家对该 IP 段进行 ping 和 TCP 测试。尤其是中国大陆:一个地址段可能在海外完全可达,在国内却无法访问,参见从中国大陆测试站群 IP 连通性。平台访问情况请参见流媒体与平台访问测试。
不一定。从未使用过的 IP 段也可能尚未被地理位置数据库收录,或者没有 ROA。长期在信誉良好的网络下平稳使用的 IP 段,往往是更好的选择。
whois 中的国家是注册信息,并不代表实际位置。对网站和平台而言,通常真正起作用的是地理位置数据库,请确保它们显示的是你需要的国家。
请访问我们的 IP 租用页面查看可选地区,并联系销售,说明你的用途以及上述检查中你关心的项目。
如果按以上步骤操作后问题仍未解决,请提交工单联系 IMIDC 7×24 技术支持,并附上 IP 段、计划用途以及上述各项检查的结果,方便工程师快速定位。