2020年5月6日水曜日

Sophos XG FirewallのLAN側IPv6 IPoE(DS-Lite)設定

3月からの在宅勤務が緊急事態宣言の延長で長引きそうなので、自宅回線増強のためIPoE化をすることに

IPoEサービスは国内だと以下2つの種類が存在している

・v6プラス (MAP-E)

・transix (DS-Lite)

どちらもIPv4アドレスを複数ユーザでシェアするためNATセッション数は1,000くらいに制限される上、送信元にウェルノウンポートが利用できないためWebサーバやVPNサーバ等の外部からアクセスするサーバ公開ができなくなる

MAP-Eであれば割り振られたポートを利用するように設定変更すれば無理やりでも方法はあるものの、DS-Liteは網側でNATされているため方法はないみたい

一応両サービスともにIPv4の固定IPアドレスサービスが存在してるものの、実際の提供ISPによってはメニュー化されていない場合がある



今回はXG FirewallがMAP-Eに対応していないので、DS-Liteを利用することにした
(厳密にはDS-Liteも公式に対応情報は出ていない)


今回選んだのはインターリンク社のZOOT NATIVE
ISP契約のみ可能で初期費無料、開通後2か月無料なのと申し込みから小一時間で開通するので試すにはちょうどいい

申し込みには自宅のフレッツ回線の種別とCAF番号、アクセスキーが必要となる
支払方法をクレジットカードにして申し込んだら登録完了メールが届き、実際の開通連絡は1時間半後くらいだった

設定はマニュアルは以下サイトに公開されている
当然XG Firewallは記載がないのでYAMAHAルータのConfig辺りを参考に手探りで頑張る



設定に必要な開通案内の情報はほぼ無いのでXG Firewallに設定を入れていく
尚、IPv6でのInternet通信をする場合はLAN側のIPv6設定も必須なので先に済ませておく

利用するインターフェースは空いてるPortCをWANとして設定する
PortBにはOCNのPPPoE設定が入っているものの、MTU値が異なるので違うNICを利用する方が無難

PPPoEを利用する場合のフレッツ光ネクストのMTUは1454、
IPoEを利用する場合のフレッツ光ネクストのMTUは1500となっている
MTU値が違う場合は読み込みが遅くなったり、そもそも繋がらないこともあるので要注意

ログインして【設定】>【ネットワーク】>【インターフェース】から【PortC】を選択
設定か所は以下
【ネットワークゾーン】 WAN
【IPv4設定】 チェックを外す
【IPv6設定】 チェックを入れる
【IPの割り当て】 DHCP
【モード】 手動 ステートレス DHCPから他の設定を承認にチェック
IPoEの場合は回線認証のためIPv6アドレスは自動でNIC側に設定される
このアドレスを後で使うのでメモしておく


次にDNSの設定
自動取得でも問題はないが、IPv4側がGoogleのpublicDNSを見ているからせっかくなのでIPv6側もGoogleに向けるため手動で設定する
【DNS2】 2001:4860:4860::8888
【DNS2】 2001:4860:4860::8844


次にtransixまでのIPIPトンネルを設定する

同じ【ネットワーク】のタブから【IPIPトンネル】を選択
隠れている場合は右端の【・・・】をクリックすれば出てくる
設定項目は以下5項目
【トンネル名】 IPoE (わかりやすい任意の名前)
【トンネルの種類】 4in6
【ゾーン】 WAN
【ローカルエンドポイント】 WAN側のNICに振られたIPv6アドレス
【リモートエンドポイント】 2404:8e01::feed:100
リモートエンドポイントはtransix側へ接続するためのIPv6アドレスで以下が公開されている

NTT東日本エリアから接続する方
2404:8e00::feed:100
2404:8e00::feed:101

NTT西日本エリアから接続する方
2404:8e01::feed:100
2404:8e01::feed:101


次にInternetの通信をトンネルに向けるためスタティックルートを設定する
上のトンネル設定を保存する際にダイアログボックスが表示されるが、そこでデフォルトルートを入れようとするとエラーになるので一旦消して、改めてやる必要があった
【設定】>【ルーティング】の【スタティックルーティング】からIPv4のルーティングを追加する
設定項目は以下2か所
【宛先IP/ネットマスク】 0.0.0.0 /0 [0.0.0.0]
【インターフェース】 IPoE(プルダウンで作成したトンネルを選択)
とりあえず全てIPIPトンネルに投げてしまえばInternet通信は問題なくできる
他にスタティックで設定を入れている場合はディスタンスの値で調整すればいい


最後にFWの設定を行う
【ルール名】 LAN-Internet (わかりやすいもので任意に)
【送信元ゾーン】 LAN
【送信元ネットワークとデバイス】 任意
【宛先ゾーン】 WAN
【宛先ネットワーク】 任意
【HTTPのスキャン】 チェックを入れる
【侵入防御】 LAN TO WAN
【Webポリシー】 Default Policy
【NAT&ルーティング】 送信元アドレスの書き換え (マスカレード)にチェックを入れる
送信用アドレスの使用】 MASQ(プルダウンで選択)
何故かLAN側をanyにしないとIPv6で通信が通らなかった
また、HTTPSの暗号化解除/スキャンを有効にしても同様に通信が通らないのでとりあえずHTTPのスキャンだけに留めることに

IPoEのIPv6通信はNAPTせず端末にアドレスが設定されるとかの記載をよく見るが、XG FirewallはLAN側にULAでIPv6を設定するためIPv6パススルーに対応していない
そのためNAPTが必須となるが、その分多少なりともセキュリティは強固になるのか

よくIPoEだと外からIPv6アドレスでアクセスできてしまうからポート閉塞などきちんと行う必要があると言われるが、NAPTしていれば明示的に開けない限り入れないので多分大丈夫



設定が完了したら以下サイトで接続確認を行う

IPv4、IPv6ともにInternet Multi Feedのtransixに接続できていることが確認できる
ICMPがNot testedになっているのはNAPTしている影響


回線を切り替えてから体感でもかなり安定した速度が出るようになった気がする
速度判定サイトはサイトによってまちまちだが上下共に100Mbps~400Mbpsくらいの値が出ていた
OCNのPPPoEは100Mbpsを超えることが稀だったのでこれで在宅での業務も安定して使えそうだ


ただ、DDNSでのOpenVPNが利用できなくなったのでそちらの対策は別途検討が必要になった