SLAACとは? IPv6アドレスを設定する仕組みやDHCPv6についても解説
公開日 : 2025/02/25

「SLAAC」はIPv6アドレスの利用において重要な機能の一つです。SLAACの仕組みやメリットを、IPv6の概要から順を追ってわかりやすく説明します。役割が類似するDHCPv6についても解説します。

IPv6とは?
SLAACとは

IPv4やIPv6はどのように割り当てられるのですか?
IPv4アドレスやIPv6アドレスといったIPアドレスは、端末ごとに割り当てられるの。割り当ての手法は、手動でIPアドレスを設定する「静的割り当て」と、プロトコルを使って自動でIPアドレスを設定する「動的割り当て」の2種類があるわ。
このIPv6において、アドレスを動的割り当てで設定する方法の1つが「SLAAC(Stateless Address Autoconfiguration)」なの。機器自身が生成した情報と、ルータから受け取った情報をもとにIPv6アドレスを自動設定する機能よ。
SLAACの仕組み
以下では、IPv6アドレスを設定したい機器を「SLAACクライアント」、SLAACクライアントに必要な情報を与えるルータを「SLAACサーバ」と呼びます。
まずSLAACクライアントがネットワークに接続すると「リンクローカルアドレス」が割り当てられます。リンクローカルアドレスとは、特定のネットワーク内でのみ有効なアドレスの一つです。次にSLAACクライアントがネットワーク内のルータに向け、「RS(Router Solicitation)」というメッセージをマルチキャストで送信し、ネットワークの情報を問い合わせると、SLAACサーバ(ルータ)から「RA(Router Advertisement)」というユニキャストのメッセージが返ってきます。
RAから取得したプレフィックス(データの種類を識別するためなどに用いられる特定の文字列)と、SLAACクライアント自身が生成したインターフェースIDを組み合わせ、128ビットのIPv6アドレスを設定します。プレフィックス、インターフェースIDがそれぞれ64ビットである場合が一般的です。生成したアドレスが別のアドレスと重複していないかどうか確認する「DAD(重複アドレス検出)」という仕組みも同時に機能し、IPv6アドレスが使用可能になります。
SLAACクライアントとSLAACサーバがやり取りするRSとRAは「ICMPv6」というプロトコルのパケットです。「ICMP」はインターネットプロトコル(IP)のエラー通知や制御情報を転送するプロトコルであり、ICMPv6はIPv6バージョンです。アドレス解決やアドレス重複の検知、マルチキャストを実施する機能が追加されています。
SLAACクライアント自身によるインターフェースIDの生成については、初期は「Modified EUI-64(RFC4291)」が利用されていましたが、セキュリティ面における脆弱性が指摘されており、「RFC 7217」などのセキュリティ面が改良された形式へと徐々に移行しています。
SLAACとDHCPv6の違い
実はもう一つIPv6における動的割り当ての方法があるの。それが「DHCPv6(Dynamic Host Configuration Protocol version 6)」よ。通信に必要な情報を各デバイスに自動で割り当てるプロトコルが「DHCP」だったよね。IPv6に対応したものを「DHCPv6」、IPv4に対応したものを「DHCPv4」と呼び別物として区別しているわ。
詳しく教えてください!
情報を求める側である「DHCPv6クライアント」は、ルータから上で説明したRAを受け取った後、マルチキャストのパケットを使用し、情報を与える側である「DHCPv6サーバ」を探し、DHCPv6サーバがDHCPv6クライアントから求められた情報を返すという仕組みになっているわ。またDHCPv6は単体ではなく、RS/RAと連携して動作する点が特徴ね。宛先不明のIPアドレスを暫定的に送信する「デフォルトゲートウェイ」の情報は、RAをもとに設定されるの。
なんだか複雑になってきましたね。
さらに、DHCPv6には「ステートフルDHCPv6」と「ステートレスDHCPv6」の2種類のモードが存在するわ。ステートフルDHCPv6とは、DNSサーバの情報などのオプションの設定だけでなく、IPv6アドレス全体を配布するモードであるDHCPv6よ。一方ステートレスDHCPv6は、オプションの設定だけを配布し、IPv6アドレスを生成するSLAACと組み合わせて使用するの。
ステートフルとステートレスの違いは何ですか?
ステートフルというのは、サーバ側がクライアントの状態を保持し、状態に基づいて処理を行うこと。対してステートレスとは、サーバ側がクライアントの状態を保持せず、各リクエストが独立して処理されることよ。前者はサイトのショッピングカートのように、以前の操作を覚えているの。後者は以前の保持していないから、前後の状況に応じて処理の仕方を変えられないわ。
なるほど。
DHCPv6はステートフルなモードを持っているけれど、SLAACは常にステートレスなの。だから一部の情報(例えばDNSサーバー情報)を網羅することができないのが欠点ね。一方、SLAACが活用するRAには「RDNSS」というDNSサーバのIPv6アドレスを知らせるオプションが追加されているから、RDNSSとSLAACを組み合わせたアドレス設定も可能よ。
円滑なアドレス設定を実現するSLAAC
SLAACでは、ルータとのRS/RAメッセージのやり取りのみでIPv6アドレスを設定可能です。網羅的なネットワーク設定を可能にするDHCPv6や、RAのオプションであるRDNSSと組み合わせて活用され、効率的なIPv6アドレスの管理を実現しています。
「信頼性が高く、安全で、安定した通信が可能なネットワーク製品」をお探しならHPE Networking Instant Onがおすすめです。HPE Networking Instant Onは、大企業や官公庁に多く採用されているHPE Aruba Networkingの中小規模向けネットワーク製品です。HPE Networking Instant Onのエンタープライズ製品としての品質も受け継がれており、安定した通信を提供します。また多種多様な業種・用途・規模に向けたアクセスポイント・L2スイッチをご用意しており、自動で最新のセキュリティにアップデートされる安心設計です。
さらに、高度なスキルを持ったネットワーク技術者も不要です。クラウドのネットワーク管理ツールで簡単にスマホやPCからセットアップ、管理できます。そして、多くの法人向けネットワーク製品と異なり、管理ツールの利用にサブスクリプション費用はかかりません。リーズナブルにネットワーク管理ツールをご利用いただけます。
通信環境についてお悩みの場合は、ぜひお問い合わせください。御社のお悩みを解消いたします。
先輩! あの…。
また用語の質問ね!
そうなんです。「SLAAC」という言葉なんですが…。
なるほど。まずはIPv6から復習したほうが良さそうね。
IPv6はインターネット通信での約束事を表すIP(インターネットプロトコル)の規格の1つですよね!
その通り! 長い間、標準規格として使用されてきたのが「IPv4(Internet Protocol version 4)」なのだけれど、アドレスの数のMAXが約43億個で、通信デバイスの増加によってアドレスの枯渇が心配されたの。そこで新しく後継規格として登場し、普及が進んでいるのがIPv6よ。
それは理解しています!確かIPv6のほうがバイト数は大きいのですよね!
IPv4の長さは32ビット(4バイト)であるのに対し、IPv6は128ビット(16バイト)と長さが4倍になっているの。加えてIPv6は、IPv4と比べてセキュリティ強化がしやすくなっていて、かつシンプルな構造によって処理にかかる負荷を軽減しているから、通信速度などのパフォーマンスも向上しているのよ。
IPv6にもいろいろな種類があったような…。
そうね。復習になるけど、IPv6には機器同士の1対1の通信で使用する「ユニキャストアドレス」、特定の機器のグループに対して一斉送信する「マルチキャストアドレス」、サーバなどの複数の機器に同じユニキャストアドレスを割り当てて、最も近い機器にデータを転送する「エニーキャストアドレス」の3種類があるわ。そして、インターネットに接続する方式は「PPPoE方式」と「IPoE方式」の2種類よ。
▶ユニキャストアドレスとは? 1対1通信の基本となるIPアドレスを解説
▶エニーキャストアドレスとは? IPv6で実現する効率的なネットワーク通信
▶IPoEとは?基本的な定義を分かりやすく解説
これまでいろいろな用語を教えて頂きましたね。
ちなみにIPv6アドレスは「サブネットプレフィックス」と「インターフェースID(IID)」というもので構成されているわ。サブネットプレフィックスは端末が所属するネットワークの範囲を表す識別子(他と区別するための名前)、インターフェースIDは個々の端末を識別するIDね。