Service Using Single IP in Global


這是個我心裡埋藏已久的問號: Service Using Single IP in Global … 怎麼可能 @@?

但是看到 GCP 的文件說 “Global Load Balancing with Single Anycast IP“, 他是 Google ,所以我相信了 ….

心裡會這麼疑惑是因為很久以前在研究 ELB 原理 時,就一直在猜背後應該是靠 ASG + EC2 組出來的,然後每個 EC2 都有 EIP,所以 IP 不會是固定 …. bala bala … 認知上,實體的 Load Balancing 通常會是一台,但是通常也很貴。軟體的 LB 通常就是用 Auto Scaling 實作,而且很難跨地區。 ….

不久前聽同事提到 Google Cloud Platform (GCP) 的 Load Balancing 只有一個 IP,當時心裡想:『怎麼可能?』

去年年初,幫忙辦公室與 AWS 之間 VPN 串接,還有跟同事一起研究 Site to Site VPN (VPC to VPC),過程中遇到 Static / Dynamic Route 的問題,中間出現了一個網路的名詞:BGP,當時有查過,但其實沒很懂,反正 VPN 是通了 XDD

在更早之前,在 研究 VPC 時,看到一個設定:Propagation,官方文件沒特別解釋這是做什麼,我只知道和 Route Table 有關係,應該是搞 Networking 的都要懂的東西。後來去問了 AWS 的專家,並沒有得到很滿意的答案。

去年 AWS re:Invent 2016 大會有很多新東西,我特別留意了網路部分,也花了時間 Study / Lab 像是:From One to Many - Evolving VPC DesignIPv6 in VPC 等網路相關課題,裡面提到陌生的網路專有名詞,像是 MPLS / IPVPN / DX / vLAN 802.11Q,還有 AWS 自己的 Transit VPC ,可是心裡總有一個東西想理清楚:BGP。

AWS 去年也 release 三張新的認證考試,其中一張是 Advanced Networking,其中也提到 BGP 相關。

不知道從什麼時候發現一個現象,就是 nslookup 一些知名網站,像是 www.google.com, facebook.com, youtube.com … 回傳的 IP 都變成只有一個?映像中,都會回傳一堆,而且會一直變,很明顯是 DNS RR 的方法,但是現在都只有一個 IP!

最近開始 Study GCP 相關的東西,發現 Google 真的是強大!而且還看到同事說的是真的!經過前面的連結,我找了很多關鍵字,終於找到我要的了:

歸納起來,這些背後用的關鍵技術就是: BGP (Border Gateway Protocol)

BGP 可以用來動態交換路由表,多個 VPC 可以省的設定一堆 Route Table,所以如果是應用在 Anycast IP 意思應該就是背後的 IP 會自動交換路由表,讓封包自己去跑,最前面只要給一個就好,所以 Google Load Balancing 可以做到外面只看到一個 IP!超酷的!

延伸閱讀 (站內)


Comments