開始輸入,可搜尋發票、服務、域名、工單,以及 更多...
從 IMIDC 租用了 IPv4 / IPv6 地址段,想在自己的機房或其他服務商處用自有 ASN 做 BGP 廣播?這類需求通常需要三樣東西:IP 持有方出具的 LOA 授權書、IRR 中的路由物件(route / route6),以及 RPKI 的 ROA。本文梳理整個流程:LOA 是什麼、申請時需要提供哪些資訊、IRR 與 ROA 怎麼配合、上遊如何過濾,以及如何用 bgp.tools、bgp.he.net、RIPEstat 確認廣播生效。適用於已經擁有 ASN、並與上遊建立了 BGP 會話的網路運營者。
LOA(Letter of Authorization,授權書)是 IP 地址持有方出具的書面檔案,宣告“允許 ASxxx 廣播某某字首”。大多數上遊運營商和 IX 在接受客戶字首前都會核驗:這段 IP 屬於誰、你有沒有權利廣播。僅憑 LOA 不夠,現在多數上遊還會自動檢查 IRR 和 RPKI,所以 LOA、IRR 路由物件和 ROA 三者應保持一致。
通過工單提交 LOA 申請,並準備好以下資訊。資訊越完整,處理越快:
Prefix(es): 203.0.113.0/24 2001:db8:1000::/48
Origin ASN: AS64500
Company / holder: Example Networks Ltd
Upstream(s): AS64510 (Transit Provider A), AS64520 (IX route server)
Announce from: 2026-10-10
IRR source: RIPE / RADB
Technical contact: [email protected]
IRR(Internet Routing Registry)是全球路由註冊資料庫,許多上遊用它自動生成字首過濾器。對於 RIPE 區域的地址,route 物件建立在 RIPE 資料庫中,需要地址持有方授權,通常由 IMIDC 代為建立或授權;非 RIPE 區域地址常用 RADB。具體寫法見幫助中心“IRR 路由物件建立”教程。建立後可以用 whois 查詢確認:
# install whois: Debian/Ubuntu
apt install -y whois
# CentOS/Rocky/AlmaLinux
dnf install -y whois
# route object in the RIPE database
whois -h whois.ripe.net -T route 203.0.113.0/24
whois -h whois.ripe.net -T route6 2001:db8:1000::/48
# route object mirrored / registered in RADB
whois -h whois.radb.net 203.0.113.0/24
確認輸出中的 origin 欄位就是你的 ASN。
越來越多的運營商對 RPKI Invalid 的路由直接丟棄。如果這段 IP 已存在 ROA 但授權的是其他 ASN,你的廣播會被判為 Invalid。請在工單中要求為你的 ASN 簽發 ROA,並注意最大字首長度(maxLength)要覆蓋你實際廣播的長度。可以用 RIPEstat 介面檢查狀態:
# RPKI status of origin AS64500 for the prefix (RIPEstat API)
curl -s "https://stat.ripe.net/data/rpki-validation/data.json?resource=AS64500&prefix=203.0.113.0/24" | python3 -m json.tool | grep -E '"status"|"validating_roas"' -A2
狀態為 valid 才算正常;unknown 表示沒有 ROA,多數網路仍會接受;invalid 必須先修正再廣播。
上遊通常按你的 ASN 或 as-set 從 IRR 生成字首列表,有的每天自動重新整理,有的需要你提交工單通知並附上 LOA。上遊確認後,在你自己的路由器上釋出字首。以 BIRD 2 為例:
# BIRD 2 example (see the "BGP session" guide for the full config)
protocol static announce_v4 {
ipv4;
route 203.0.113.0/24 blackhole;
}
filter export_upstream {
if net = 203.0.113.0/24 then accept;
reject;
}
# reload and check
birdc configure
birdc show route export upstream_v4
廣播後一般幾分鐘內就會出現在全球路由表中。在瀏覽器開啟 bgp.tools 或 bgp.he.net 搜尋字首,檢視源 ASN、上遊路徑與 RPKI 狀態;RIPEstat(stat.ripe.net)的 Routing Status 可以看到多少個 RIS 採集點看到了這條路由。命令列也可以查詢:
# who sees the prefix and with which origin (RIPEstat)
curl -s "https://stat.ripe.net/data/routing-status/data.json?resource=203.0.113.0/24" | python3 -m json.tool | head -40
# how many RIS peers see it
curl -s "https://stat.ripe.net/data/visibility/data.json?resource=203.0.113.0/24" | python3 -m json.tool | grep -E '"ris_peers_seeing"|"total_ris_peers"'
# from your router: is the session up and the route exported?
birdc show protocols
# test reachability of an address in the prefix from outside
mtr -rwc 20 203.0.113.1
典型時間線:提交完整資料後,LOA 與 IRR/ROA 的準備通常需要數個工作日內完成(視資料完整度與稽核情況而定);上遊更新過濾器從幾小時到幾天不等,取決於上遊的自動化程度;路由本身在全球傳播通常只需幾分鐘;部分地理位置資料庫更新會更慢,可參考“Geofeed”教程。
依次檢查:BGP 會話是否 Established;路由器上是否真的匯出了該字首;上遊是否已更新過濾器(可在上遊的 Looking Glass 中查詢);RPKI 是否為 Invalid。
IPv4 小於 /24 的字首在網際網路上普遍被過濾,不建議這樣做。可以在 /24 內部自行劃分子網使用,對外仍然廣播完整的 /24。
更換 ASN 需要重新出具 LOA,並更新 IRR 路由物件和 ROA;只更換上遊時,通常只需讓新上遊更新過濾器,部分上遊會要求新的 LOA。
如仍無法解決,可提交工單聯絡 IMIDC 7×24 技術支援:https://www.imidc.com/submitticket.php