開始輸入,可搜尋發票、服務、域名、工單,以及 更多...
想讓自己的 ASN 廣播的 IP 字首被上遊和 IX 接受,第一步往往是建立 IRR 路由物件。IRR(Internet Routing Registry,網際網路路由註冊庫)記錄“哪個字首由哪個 ASN 發起”,上遊運營商會據此自動生成 BGP 字首過濾器,沒有路由物件的字首通常會被直接過濾。本文講解 RIPE 資料庫中 route / route6 物件的寫法、非 RIPE 地址如何使用 RADB、as-set 的基本概念、上遊如何從 IRR 生成過濾器,以及用 whois 驗證。命令適用於 Debian/Ubuntu 與 CentOS/Rocky/AlmaLinux。
route 物件應該建在 IP 段所屬 RIR 的資料庫裡:RIPE 區域地址建在 RIPE DB,APNIC 地址建在 APNIC 庫,ARIN 地址可用 ARIN 自己的 IRR,其他情況或需要補充時常用 RADB。先查詢 inetnum 的維護者以及你的 aut-num:
# install whois: Debian/Ubuntu
apt install -y whois
# CentOS/Rocky/AlmaLinux
dnf install -y whois
# which RIR and maintainer hold the block?
whois -h whois.ripe.net 203.0.113.0/24 | grep -E 'inetnum|netname|mnt-by|mnt-routes|mnt-lower|source'
whois -h whois.ripe.net AS64500 | grep -E 'aut-num|as-name|mnt-by'
在 RIPE 資料庫中建立 route 物件需要兩方授權:IP 段的 mnt-routes(或 mnt-lower / mnt-by)維護者,以及 origin 所指 ASN 的維護者。如果 IP 是向 IMIDC 租用的,字首授權由 IMIDC 的維護者完成,請通過工單提交字首與 ASN,由我們建立或協助授權。
RIPE 資料庫支援網頁編輯(登入 RIPE NCC Access 後在 Database 中選擇“Create an object”)和電子郵件/whois 風格的純文本提交。核心欄位只有幾個:route(字首)、origin(發起 ASN)、mnt-by(你的維護者)、source(資料庫名)。IPv6 使用 route6:
route: 203.0.113.0/24
descr: Example Networks - leased from IMIDC
origin: AS64500
mnt-by: EXAMPLE-MNT
source: RIPE
route6: 2001:db8:1000::/48
descr: Example Networks IPv6
origin: AS64500
mnt-by: EXAMPLE-MNT
source: RIPE
RADB 是由 Merit 運營的公共 IRR,許多北美、亞太的上遊都會查詢它,並且它映象了大量其他 IRR。使用 RADB 需要先申請一個維護者(maintainer)帳戶(RADB 是付費服務),然後通過網頁或郵件提交物件。注意 source 欄位為 RADB:
route: 198.51.100.0/24
descr: Example Networks
origin: AS64500
mnt-by: MAINT-AS64500
source: RADB
如果你自己還有下遊客戶 ASN,上遊需要知道你可能轉發哪些 ASN 的字首,這時就要用 as-set。命名推薦使用“層級式”寫法(AS號:AS-名稱),members 中列出你自己和下遊的 ASN,也可以巢狀其他 as-set。然後把 as-set 名告訴上遊,並在 aut-num 的 export 策略中引用它。
as-set: AS64500:AS-CUSTOMERS
descr: AS64500 and its downstream customers
members: AS64500
members: AS64501, AS64502
mnt-by: EXAMPLE-MNT
source: RIPE
大多數上遊使用 bgpq4 這類工具,按你提交的 ASN 或 as-set 查詢 IRR,展開出所有 route 物件,生成路由器的字首列表,並定時重新整理。你可以自己執行同樣的命令,提前看到上遊會允許哪些字首:
# Debian/Ubuntu
apt install -y bgpq4
# CentOS/Rocky/AlmaLinux (EPEL)
dnf install -y epel-release && dnf install -y bgpq4
# IPv4 prefix list for everything AS64500 originates
bgpq4 -4 -l AS64500-IN AS64500
# IPv6, expanding an as-set, BIRD syntax
bgpq4 -6 -b -l AS64500_V6 AS64500:AS-CUSTOMERS
# aggregate output (-A) for a large as-set
bgpq4 -4 -A -l CUST-IN AS64500:AS-CUSTOMERS
如果輸出裡沒有你的字首,上遊大機率也會過濾掉它。不同上遊重新整理週期不同,從數小時到一天一次不等,更新物件後可以工單通知上遊手動重新整理。
物件建立後,通過 whois 確認已經生效。RADB 映象了 RIPE、APNIC、ARIN 等多個 IRR,所以查 whois.radb.net 可以大致代表上遊看到的結果(映象同步可能有延遲):
# route object for a prefix (RADB mirrors most IRRs)
whois -h whois.radb.net 203.0.113.0/24
# all route objects with origin AS64500
whois -h whois.radb.net -- '-i origin AS64500'
# RIPE DB only, route and route6
whois -h whois.ripe.net -- '-T route,route6 -i origin AS64500'
# members of an as-set
whois -h whois.radb.net AS64500:AS-CUSTOMERS
通常是缺少 IP 段維護者的授權。租用的 IP 段由 IMIDC 維護,請提交工單提供字首、ASN 和你的 mnt-by 名稱,由我們完成授權或代為建立。
路由物件屬於 IRR,用於上遊生成過濾器,任何有維護者許可權的人都能建立;ROA 屬於 RPKI,由地址持有方通過 RIR 加密簽發,用於路由源驗證。兩者最好同時具備且 ASN 一致。
需要。過期的路由物件會讓他人誤以為該 ASN 仍可廣播該字首,帶來安全隱患。停止廣播或租期結束時請及時刪除,或聯絡我們處理。
如仍無法解決,可提交工單聯絡 IMIDC 7×24 技術支援:https://www.imidc.com/submitticket.php