IPv6ルーティングとデュアルスタック構成(IPv4との共存)

  • URLをコピーしました!

IPv6の普及が進む一方で、依然として多くのネットワークではIPv4が利用されています。 そのため、「IPv4とIPv6を共存させる構成」=デュアルスタック構成が一般的です。 本記事では、IPv6のルーティングの基本と、デュアルスタック構成を実現するための考え方・設定方法をわかりやすく解説します。

目次

1. IPv6ルーティングの基本

IPv6のルーティングは、基本的な仕組みはIPv4と同じであり、宛先ネットワークへの最適経路を選択しパケットを転送します。 ただし、IPv6ではプロトコルの構造が簡素化され、ルータの動作が効率化されています。

◆ IPv6ルータの役割

  • 隣接ルータやホストに対してRouter Advertisement(RA)メッセージを送信
  • IPv6ルーティングテーブルに基づいてパケットを転送
  • 静的ルーティングまたは動的ルーティング(RIPng / OSPFv3 / BGP4+など)をサポート

◆ IPv6ルーティングテーブルの例(Linux)

$ ip -6 route show
2001:db8:100::/64 dev eth0  proto kernel  metric 256
2001:db8:200::/64 via fe80::1 dev eth1  metric 1024
default via fe80::1 dev eth0  metric 1024

この例では、2001:db8:100::/64が直接接続ネットワーク、 2001:db8:200::/64はルータfe80::1経由で到達できることを示しています。

2. IPv6静的ルーティングの設定例

◆ Ciscoルータでの設定例

Router(config)# ipv6 unicast-routing
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ipv6 address 2001:db8:1::1/64
Router(config)# ipv6 route 2001:db8:2::/64 2001:db8:1::2

この設定では、2001:db8:2::/64宛のパケットを隣接ルータ2001:db8:1::2に転送する静的ルートを追加しています。 IPv6ルーティングを有効化するためには、必ず最初にipv6 unicast-routingコマンドが必要です。

◆ Linuxでの設定例

# IPv6ルート追加
sudo ip -6 route add 2001:db8:2::/64 via 2001:db8:1::2 dev eth0

# 確認
ip -6 route show

3. デュアルスタック構成とは

デュアルスタック構成(Dual Stack)とは、1台の機器・ネットワークがIPv4とIPv6の両方を同時にサポートする構成です。 つまり、端末・サーバ・ルータが「2つのIPアドレス」を持ち、どちらのプロトコルでも通信できるようになります。

◆ 構成イメージ

PC1
 ├─ IPv4アドレス: 192.168.1.10
 └─ IPv6アドレス: 2001:db8:100::10

ルータ
 ├─ IPv4: 192.168.1.1
 └─ IPv6: 2001:db8:100::1

このように、各機器がIPv4とIPv6の両方のアドレスを持つことで、 相手の対応状況に応じて最適なプロトコルで通信を行います。

4. デュアルスタックの動作原理

デュアルスタック環境では、通信先のドメイン名(例:example.com)に対してDNSでIPv4/IPv6両方のアドレスが返されます。

◆ DNS応答の例

$ nslookup example.com
Name: example.com
Address: 93.184.216.34       # IPv4
Address: 2606:2800:220:1:248:1893:25c8:1946  # IPv6

クライアントは「どちらの経路が利用可能か」を判断し、通常はIPv6を優先して通信します(RFC 6724に基づく優先順位)。

5. IPv4とIPv6の共存技術

すべてのネットワークがすぐにIPv6へ完全移行できるわけではありません。 そのため、IPv4とIPv6を共存・移行させるための仕組みが複数存在します。

◆ 主な共存技術

方式概要
デュアルスタックIPv4とIPv6の両方を同時に利用。現在最も一般的な方法。
トンネリング(6to4 / GRE / ISATAP)IPv6パケットをIPv4ネットワーク上にカプセル化して転送。
NAT64 / DNS64IPv6クライアントとIPv4サーバ間の通信を仲介する仕組み。

特に企業ネットワークでは、当面の間デュアルスタック構成が主流となります。 新しいサービスをIPv6で提供しつつ、既存IPv4サービスも継続利用できるためです。

6. トラブルシューティングのポイント

デュアルスタック構成では、どちらのプロトコルで通信しているかを把握することが重要です。

  • ① IPv6優先通信の影響 → IPv6が有効だが通信不可な場合、IPv4フォールバックまで時間がかかる(DNSのAAAA応答優先問題)
  • ② デフォルトルートの設定漏れ → IPv6ルートが未設定の場合、IPv4では通信できるがIPv6だけ疎通不可となる
  • ③ ファイアウォール設定の不備 → IPv6のICMPv6(Neighbor Discovery)やRAメッセージをブロックしていないか確認

◆ 疎通確認コマンド

# IPv6接続確認
ping6 2001:db8::1
traceroute6 2001:db8::1

# IPv4接続確認
ping 192.168.1.1
traceroute 192.168.1.1

7. まとめ

  • IPv6ルーティングはIPv4と同様にルートテーブルを基に動作する
  • デュアルスタック構成では、IPv4とIPv6の両方を同時にサポート
  • 完全移行までは「共存技術(トンネリング / NAT64など)」が重要
  • トラブル時は、どちらのプロトコルで通信しているかを確認することが鍵

IPv6への移行期において、デュアルスタックは最も現実的かつ柔軟なアプローチです。 ルーティングや共存技術の理解を深めることで、IPv6時代のネットワーク設計をより確実に行うことができます。

目次