Anycast 让分布在各地的多个节点宣告同一个 IP 地址:路由系统(BGP)把用户流量引到「路由意义上最近」的那个节点。它与 Unicast(一地址一节点)、Multicast(一地址一组订阅者)并列。BGP 是路径矢量协议,各自治系统(AS)之间交换「到某前缀经过哪些 AS」的路由;多个地点同时宣告同一前缀时,各地路由器自然选择 AS 路径最短的宣告——Anycast 就是利用这一选路机制实现就近接入,本身不需要新协议。
典型应用:1)根 DNS 与公共 DNS(如 1.1.1.1、8.8.8.8)——全球数百节点同地址,用户自动就近查询,还天然分散 DDoS 流量;2)CDN 边缘接入——同一 VIP 多点宣告。优势与风险并存:路由的「最近」不等于地理最近(运营商互联关系决定路径,可能绕路);路由抖动会把长连接切到另一节点导致 TCP 断裂(所以 Anycast 更适合 DNS 这类短事务,长连接场景要配合连接迁移或会话同步);单节点故障时 BGP 收敛期间流量可能漂移到次优节点。追问方向:Anycast 与 GeoDNS(按来源返回不同 IP)两种就近方案的对比、BGP 的 AS_PATH 与路由劫持/泄露事故、RPKI 对宣告合法性的验证。
(约 450 字)