前はSEILでやりましたが今度はXG Firewallで設定しました。

前提条件

  • 機器はSophos XG Firewall
    • Hyper-V上で稼働
    • NICは2本
  • 回線はIIJmioひかり+IPoEオプション
    • transixがつかえる
  • ひかり電話なし
    • DHCPv6 PrefixDelegation無しでRouterAdvertisementのみ
  • LAN側のIPv6はユニークローカルアドレスを振ってNAT6する
    • ネット上の手順だとブリッジするのが多いが、何となく怖いのでブリッジしたくない

最初の諸々

  • 適宜インストール
  • 初期設定ウィザードをいい感じに設定する

ファイアウォールの設定

WAN->LANは全閉じ、LAN->WANは全開にする。

  • 左メニューから[ファイアウォール] -> [IPv4] -> [ファイアウォールルールの追加] -> [ユーザー/ネットワークルール] で以下を作成
    • アクション: 許可
    • 送信元ゾーン: LAN
    • 宛先ゾーン: WAN
  • 以下も作る
    • アクション: 破棄
    • 送信元ゾーン: WAN
    • 宛先ゾーン: LAN
  • IPv6でも同様に作る

WAN側IPv6の設定

PortAがLAN側、PortBがWAN側になっている前提。

  • 左メニューから[ネットワーク] -> [インターフェース] -> [PortB]
    • IPv6設定: チェック
    • IPの割り当て: DHCP
    • モード: 手動
      • ステートレスを選択
      • DHCPからの他の設定を承認: チェック
    • DHCP高速コミット: チェックなし
    • ゲートウェイ名: ipv6 IPoE (なんでもいい)
    • [保存]をクリック
  • 再度[ネットワーク]を開き、PortBに2409で始まるIPv6が振られていることを確認
  • 左メニューから[診断] -> [ツール] -> [Ping] でテスト
    • IPアドレス/ホスト名: 2001:4860:4860::8888
    • IPバージョン: IPv6
    • [Ping]をクリックして何か結果が返ってくるはず

DNSの設定

SEILではDHCPv6で拾えていたが、XG Firewallではうまく拾えなかったので手打ちする。

  • 左メニューから[ネットワーク] -> [DNS] -> [IPv6]
    • スタティックDNS: チェック
    • DNS 1: 2404:1a8:7f01:b::3
    • DNS 2: 2404:1a8:7f01:a::3
  • 左メニューから[診断] -> [ツール] -> [名前参照] でテスト
    • IPアドレス/ホスト名: gw.transix.jp
    • DNSサーバーIP:2404:1a8:7f01:b::3
      • 2404:8e00::feed:1012404:8e00::feed:100 が返ってくることを確認
      • この値は後で使う

transixのトンネル作成

  • 左メニューから[ネットワーク] -> [IPトンネル] -> [追加]
    • トンネル名: transix (なんでもいい)
    • トンネルの種類: 4in6
    • ゾーン: WAN
    • ローカルエンドポイント: WAN側ポートに振られているIPv6アドレス
    • リモートエンドポイント: 2404:8e00::feed:101
      • 上でDNS参照したときに返ってきた値
    • [保存]

テスト方法は思いつかなかった

全通信をtransixに向けるルーティング

  • 左メニューから[ルーティング] -> [スタティックルーティング] -> [IPv4ユニキャストルート] -> [追加]
    • 宛先IP / ネットマスク: 0.0.0.0 /0
    • インターフェース: transix (上でつけたトンネル名)
    • [保存]
  • アクセス情報【使用中のIPアドレス確認】でtransixっぽいホスト名が出ていることを確認

LAN側IPv6設定

適当にprefixを生成しておく。IPV6 Address Generator - Generate IPV6 with Global & Subnet ID 生成値を fd12:3456:dead:beef::/64 とする。

  • 左メニューから[ネットワーク] -> [インターフェース] -> [PortA]
    • IPv6設定: チェック
    • IPの割り当て: スタティック
    • IPv6/プレフィックス: fd12:3456:dead:beef::1 / 64
      • ID部は適当に1
    • [保存]
  • 左メニューから[ネットワーク] -> [IPv6ルーターアドバタイズ] -> [追加]
    • インターフェース: PortA
    • マネージドフラグ: チェックなし
    • アザーフラグ: チェック
    • デフォルトゲートウェイ: チェック
    • アドバタイズ設定のプレフィックス: fd12:3456:dead:beef::
  • LAN側に繋いだWindows端末で
    • ping 2001:4860:4860::8888
    • なにか返ってくればOK。返ってこない場合はネットワークを繋ぎなおしてみる

LAN側DHCPv6設定

DNSの値を配るためだけに使う。DUIDマッピングは不要だが入れないとDHCP設定が保存できない。

  • 左メニューから[ネットワーク] -> [DHCP] -> [IPv6]
    • 名前: DHCPv6 (なんでもいい)
    • インターフェース: PortA
    • スタティックIPのDUIDマッピング
      • ホスト名: dummy
      • DUID: 00:00:00:00:00
      • IPアドレス: fd12:3456:dead:beef::100
    • デバイスのDNS設定を使用: チェック
  • LAN側に繋いだWindows端末で
    • nslookup gw.transix.jp
    • なにか返ってくればOK。返ってこない場合はネットワークを繋ぎなおしてみる

最後に

あなたの IPv6 をテストしましょう。 でいい感じになっているかテストする。