2024年7月2日 星期二

Anycast的用途說明【冤枉呀!人不是我殺的】

 

邱顯智 Ozzy Chiou

  • 恆逸教育訓練中心-資深講師
  • 技術分類:網路管理與通訊應用

 


剛接觸IPv6的朋友應該知道IPv6封包的傳遞方式有三種:Unicast(單播)、Multicast(群播)與Anycast(任一播),取消了傳統IPv4的Broadcast(廣播),於是很多朋友就直覺得誤以為Anycast是用來取代Broadcast的新技術,這個誤會可大了。

其實Anycast並不是IPv6的新技術,IPv4早就已經在用了,只是沒有大聲嚷嚷而己,最具代表性的範例就是Google的8.8.8.8以及8.8.4.4這兩台公用DNS伺服器,這是經過Google正式官宣使用Anycast技術的案例。

Google在世界各地建置了許多資料中心,在這些資料中心裡也建置了許多IP地址都是8.8.8.8或8.8.4.4的DNS伺服器,因此,如果您使用8.8.8.8或是8.8.4.4當做您的DNS伺服器的時候,BGP路由就會根據您所在的位置,將您的名稱解析查詢導向到離您最近的Google公用DNS伺服器。 所以Anycast的特性如下:

  • 1-to-Nearest:傳送到最接近的主機,最接近的主機則是交由路由協定(例如BGP)選擇的最佳路徑來決定。
  • 與Unicast共用同一段IP地址空間,如上述8.8.8.8以及8.8.4.4這兩個地址傳統是屬於IPv4的Class A地址,但是也可以用於Anycast之用,在Cisco路由器上,您只要在配置IPv6地址命令加上Anycast參數,該地址即可搖身一變改為Anycast的用途。
  • 允許多台主機配置同一個IP地址:一般的Unicast地址不可以有兩台主機配置同一個IP地址,否則會造成IP地址衝突的狀況,Anycast地址則無此限制。
  • 適合用於需要Load-sharing的服務:如果您的伺服器在公眾雲上面,您可以透過指定伺服器所在的Region,將用戶造訪的流量導向到最鄰近的伺服器,達到地理位置上的流量分散。甚至,這樣的配置也可以用來稀釋分散式阻斷服務(Distributed Denial-of-Service)攻擊的流量,減緩遭受DDoS攻擊的影響。

您可在下列課程中了解更多技巧喔!

0 意見:

張貼留言