見出し画像

応答速度が向上!IPv6が持つ独特の仕組み!エニーキャスト

「仕事を誰に割り当ててもいいのなら、一番近い人にやってもらいますか?」

はい、こんにちは!松井真也です。シリーズ「着実に普及していくIPアドレスの進化版:IPv6」の第9回で、最終回でございます。

前回は、IPv6におけるマルチキャストです。特定の複数の受信者に対して同じデータを一斉に送信する通信方式で、通信ネットワークを効率的に利用することができるのでした。

さて、今回は、エニーキャストをご紹介します。え、聞いたことない?そう、この仕組みはIPv4にはないので、馴染みがないのは当然です。では、IPv6で使われるこの機能、いったいどのように活躍するのでしょうか?

早速見ていきましょう!

エニーキャストアドレスとは何か

エニーキャストアドレスとは、特定の複数のノードが共有するアドレスです。

エニーキャストのプレフィックスは、「グローバルユニキャスト」と区別がないので、プレフィックスだけを見ても「グローバルユニキャスト」が「エニーキャスト」かは判別できません。

一つのアドレスが共有されたら、目的のノードに届かないような気がすよね?

ところが、ここがエニーキャストの面白いところで、送信者から最も近いノードにデータが届くように設計されています。

このアドレスを利用することで、データの送受信が効率的になり、ノードの負荷が分散できるというわけです。

ユニキャストやマルチキャストとの違い

それでは、ユニキャストやマルチキャストとの違いを絵で見ていきましょうか。

ユニキャストとマルチキャスト

上図のとおり、ユニキャストは、特定のアドレス一つに向かって通信します。一方、マルチキャストは特定のグループに向かって通信します。ざっくりとした説明ですが、これは問題なく理解できますね。

エニーキャストは、これらとちょっと違います。

エニーキャスト

まず注目してほしいのは、上図の受信ノードは、「アドレスA」を共有していることです。

クライアントは、「アドレスA」に対して送信するのですが、その先がどうなっているのかは知りません。他方、ルータは、アドレスAが割り振られれているノードのうち、最も近いものの経路へデータを送出します。

この違いにより、大規模な配信ネットワークや負荷が高いサービスでエニーキャストの利用できることが想像できますね!

なお、上図の受信ノードは、固有のグローバルユニキャストアドレスを別にもっています。これらのノードが発信するときは、そのグローバルユニキャストアドレスを使います。発信用に「エニーキャスト」は使用しないのです。

エニーキャストのネットワークでの役割

では、具体的に、エニーキャストは、どう使われるでしょうか?よく代表例として引き合いに出されるのが、「DNS」です。

DNSサーバがエニーキャストアドレスを使用することで、ユーザは常に最も近いサーバからドメイン名の解決サービスを受けることができます。これがインターネット全体の応答速度の向上に寄与しています。

DDoS攻撃も緩和する

エニーキャストの利用には、いくつかのメリットがあります。最も基本的なものは、やはり応答速度の向上と負荷分散です。ネットワーク上の複数の地点にデータを配信することで、一点に集中する負荷を軽減し、全体としてのパフォーマンスを向上させます。

しかし、それだけではございません。DDoS攻撃に対しても、エニーキャストは有効な防御手段を提供します。攻撃があった場合には、トラフィックを複数のポイントに分散させることで、特定のサーバーへの影響を抑えることができます。

とはいえ、攻撃者が特定のサーバだけを攻撃しにくいというだけですから、他の対策手段と組み合わせる必要はありそうですね。

はい、本日は、ここまで今回は、ノードにアドレスを共有させて、もっとも近いノードに届くようにする「エニーキャスト」についてご紹介しました。


これでIPv6シリーズは終了です。お疲れ様でした!


この記事が気に入ったらサポートをしてみませんか?