3
10
2019
IPv6(IPoE)ネットワークの構築(実践編:その1)
IPv6(IPoE)ネットワークを構築してみる
前回はIPv6(IPoE)ネットワークの構築を行う際に必要となるIPv6関連の基礎知識を中心に説明したが、今回は実際にFLET’S光ネクストサービスでのIPoE方式によるIPv6ネットワークの構築方法について具体的な事例を示しながら説明して行くことにする.
FLET’S NGN網でのIPoEサービスでは、ユーザが契約しているI.S.P.によってV.N.E.事業者が異なっているが、IPv6アドレスの払い出し方法は共通なので、C.P.E.(ユーザ側のルータ)に設定するIPv6関連の設定は同じになる.異なる部分があるのは、IPv4 over IPv6つまりIPv4の通信をIPv6経由で行うトンネリングに関する部分の設定だけだ.
IPv4通信をIPv6ネットワークに載せる方法として代表的なものにDS-Lite、MAP-Eの2方式があるが、両方ともIPv4パケットをIPv6パケットのデータ(ペイロード)部分に包み込んだ状態で、FLET’S NGN網内を抜けてV.N.E.事業者内に置かれた変換装置を経由して外部のインターネットとの間でIPv4の通信が行われる.
DS-Lite方式はV.N.E.事業者内のAFTRという変換装置でNAPT変換されて外部とのIPv4接続が行われる仕組みなっており、もう一方のMAP-EはNAPT変換される場所がユーザ側のC.P.E.装置(ホームルータ)側で行われることが大きな違いだ.DS-LiteとMAP-Eについては、この後予定している「IPv6(IPoE)ネットワークの構築(応用編)」で詳しく説明する予定だ.
RA方式によるFLET’S IPoE環境の設定(光電話契約なしの場合)
NTTに光電話契約を申し込んでいない場合は、このRA方式による64ビット長のIPv6プレフィクスの払い出しになる.IPv6プレフィクスを払い出すのは、FLET’S NGN網内に設置されたルータ(P.E.)側で、ユーザ側に設置されたルータは上位ルータである上位ルータからのRA通知やクライアント端末からのRS要請を仲介(プロキシ)、あるいは素通し(パススルー)するだけだ.
最近のIPv6対応をうたうホームルータはこのRA/RSをプロキシする(NDプロキシと表現する場合が多い)機能が備わっていることが多いが、少し前の製品ではプロキシ機能ではなく、IPv6ブリッジ(またはIPv6パススルーという名称が付いている)機能しか備わっていない場合が多いので、『IPv6対応』という言葉に騙されないように注意が必要だ.
NDプロキシ機能が備わっていればセキュリティー対策がきちんと行われているという誤った解釈が広まっているようだが、NDプロキシ機能とファイアウォール機能は全く別なものなので、ファイアウォール機能をきちんと設定していなければセキュリティー的には無防備な状態であることに変わりはない.
但し、最近のIPv6(IPoE)対応をうたっている家庭用ルータでは、このNDプロキシ機能を有効にすると、自動的に最低限のファイアウォール機能が有効になる場合が多いので、あながち嘘ではない.
NDプロキシとIPv6ブリッジ(パススルー)を選択可能な場合は、勿論NDプロキシモードを選択すべきではあるが、家庭用のルータが行っているデフォルトのパケットフィルタリング機能については、メーカ側でどのような実装をしているのかきちんと確認しておいた方が良いだろう.
RA方式では、IPv6プレフィクスはルータからのRAにより取得し、DNSサーバ等の情報は一般的にはDHCPv6サーバから取得する方法が使用されている.『一般的』と書いたのは、IPv6の新しいRFC(6106: “IPv6 Router Advertisement Options for DNS Configuration” )では、RAを通じたDNSサーバ情報の取得について定められてはいるものの、世の中の殆どの機器はこの新しいRFCに対応していないので、専らDNS情報はDHCPv6サーバから取得することになる.
現時点で家庭用の製品でIPv6パケットフィルタリング機能が備わっている事がマニュアル等から確認できているのは、
・NTT提供のHGW PR-500KI 機能詳細ガイド
・NEC Aterm WG2600HP3 ユーザーズマニュアル “7-1. 初期値一覧”
・Buffalo WTR-M2133HPシリーズ、WRM-D2133HPシリーズなどの比較的最近の機種
家庭用として売られているルータでは、ブリッジモードでパケットフィルタリング可能な機種は見たことがない.勿論、まともなファイアウォールであれば、ブリッジモード(透過モード)でパケットフィルタリングする機能は普通に備わっているが、ルータ機器ではNECのIXシリーズやCisco Systemsなどの業務用として売られているルータぐらいだろうか.
IPv6ブリッジ(IPv6パススルー)方式
この方式は、IPv4パケットに関しては通常のルータとして振る舞い、NAPTなどのアドレス変換やパケットフィルタリング(ファイアウオール)機能が動作するが、IPv6パケットはWAN側インタフェースとLAN側インタフェースがL2レベルで直結される単純なブリッジとして動作する.
この方式を採用している家庭用のルータでは、殆どの場合IPv6パケットがNGN網側とクライアント端末間が素通しとなるため、家庭内のLANがIPv6で外部に対して無防備な状態で直接晒されてしまう事になる.家庭用のルータではコストや性能的にブリッジフィルタリング機能を実装する訳にも行かないので、メーカーは危険を承知の上で『”IPv6″対応』を謳うために単純なブリッジ機能を実装しているのだろう.
単純なブリッジ(パススルー)機能しか持たないルータの場合
IPv6の世界では家庭内のLANが直接外部に晒されているのと同じ事を意味する
NDプロキシ方式
最近のたIPoE方式によるIPv6対応を謳う家庭用のルータでは、『NDプロキシ方式』という機能が実装されていることが多い.近年のIPv6利用者の増加に対して、メーカー側も無責任な『単純ブリッジ(パススルー)』の提供だけでは”マズイ”と思ったのか、ここに来て急に ”セキュリティー対応” を口に出すようになった.
NDプロキシ(またはRAプロキシとも呼ばれる)方式の場合、IPv6パケットに対してもIPv4と同様にルータとして動作することになる.この場合、WAN側とLAN側がL3レベルの通信しかできなくなるので、ICMPv6を使って通信が必要なRA/RS、NDなどのIPv6を支えている重要な機能が使えなくなってしまう.このため、最近のIPoE対応を謳うホームルータは、RA/RS、 ND関連のICMPv6メッセージをWAN側とLAN側のクライアント端末との間で仲介(プロキシ)するNDプロキシ機能が実装されている.
NDプロキシ機能を実装することで、IPv6で必須となるICMPv6関連の処理を阻むことなく、IPレベルのフィルタリング(ファイアウオール)機能を使うことができるようになるので、LAN側のセキュリティーが向上するというメリットがある.但し、YAMAHA RTXシリーズやNEC IXシリーズなどの業務用に分類されるルータでは、NDプロキシ機能とファイアウォール機能は完全に別物として実装されているので、この機能を使っている(有効にしている)からと言って、ファイアウォール機能を適切に設定していなければセキュリティー的には全く無防備であることを肝に銘じておいて欲しい.
ND Proxy機能が備わっているルータの場合
DHCPv6-PD方式によるFLET’S IPoE環境の設定(光電話契約ありの場合)
NTT東西のフレッツ光ネクストサービスでは何故か光電話契約の有無によって、IPoE方式でユーザに払い出されるIPv6アドレス(プレフィクス)の方式が異なるという困った仕様になっている.光電話契約を行わなければ、ユーザには64bit長の半固定プレフィクスしか与えられないので、単一のIPv6ネットワークセグメントになってしまう.
これではユーザが自由にIPv6ネットワーク組むことができない.折角IPv6の広大なアドレス空間を有しながら、そのメリットを台無しにするようなIPv6アドレス(プレフィクス)の割り当て方法は如何なものだろう.
光電話を契約すれば、RA方式による半固定64ビット長プレフィクス割り当て方式ではなく、56bit長の半固定プレフィクスが割り当てられ、ユーザ側では 64-56 = 8 bit分をサブネットIDとして自由に活用できるようになる.ユーザ側では最大でIPv6ネットワークを256セグメントに分割して活用できることを意味する.一般的な家庭ではせいぜい1つのLANセグメントしか無いだろうが、SOHOや小さな事業所などでは用途別に複数のLANセグメントに分割する使い方が一般的だろう.このような場合には、光電話が不要でも必ず光電話契約を行わなければならない.
NTT東西のフレッツ光ネクストサービスのIPoE方式では、RA/DHCPv6-PDどちらの方式の場合でも、ユーザに払い出されるIPv6プレフィクスは ”半固定” という断り書きが仕様で謳われている.”半固定”というのは、NTT側の設備更新や設計変更などによって、エンドユーザに払い出されるIPv6アドレス(プレフィクス)は、途中で変更される可能性があると言うことだ.つまり、フレッツ光ネクストサービスのIPoE方式では、固定IP接続用途としては使えないと言うことだ.
NTT東西のフレッツ光ネクストサービスで、完全固定IPv6アドレスを使うには、I.S.P.とPPPoE方式による固定IPv6アドレス(プレフィクス)払い出しサービスを契約する必要がある.
DHCPv6-PD方式によるIPv6アドレス(プレフィクス)の払い出し
LANが一つのネットワークセグメントしかない一般的な家庭のネットワーク環境で使っている分には、IPv6アドレス(プレフィクス)の払い出し方式がDHCPv6-PD方式でもRA方式でも、クライアント側の環境から見れば大した違いはない.違いが有るとすれば、C.P.E.(ルータ)の設定方法が多少異なるくらいだ.DHCPv6-PD方式の場合は、プレフィクスの取得をDHCPv6によって行い、ルータの情報は上位ルータからのRAによって取得する.
但し、LANがルータを介して複数のセグメントで構成されている場合は、DHCPv6-PDによってユーザ側で払い出されるIPv6アドレス(プレフィクス)をコントロールする必要がある.このDHCPv6-PDによるアドレス(プレフィクス)管理機能は業務用のルータには備わっているが、家庭用のルータではWAN側の設定がDHCPv6-PD方式でアドレス(プレフィクス)を取得可能なだけの所謂DHCPv6-PDクライアント機能しか備わっていない場合が殆どなので、家庭用のルータでは殆ど使い物にならないだろう.
DHCPv6-PDのPDはPrefix Delegationの略で、日本語ではプレフィクス委任(委譲)と呼ばれている.P.E.ルータ(プロバイダエッジ)から、払い出したIPv6プレフィクスの管理をC.P.E.(ユーザ側ルータ)側に委ねる事になる.ユーザ側のルータでは委ねられたIPv6プレフィクスを基に、PCなどのクライアント側の機器や下位のルータにIPv6プレフィクスを割り当てる.
C.P.E.ルータでは、上位ルータから委任されたIPv6プリフィクスの範囲内でプリフィクスを更に分割し、配下のルータに対して再委任(再配布)する事も可能だ.複雑な構成のLANを組む場合には、このプレフィクス再委任(再配布)機能を用いて、IPv6アドレス空間を適切に管理する必要がある.
DHCPv6-PD方式によるIPv6アドレス(プレフィクス)の再委任(再配布)
最近の家庭用ルータの機能(仕様)を探ってみる
家庭用のルータで、FLET’S 光ネクストサービスのIPoE方式によるIPv6接続に対応している機種は限られていたが、ここ最近のIPoE方式によるIPv6接続ブーム?のお陰か、一般的な家庭用のルータでもIPoE方式対応であることを明記している物が増えて来た.
これはこれで歓迎すべき事ではあるのだが、如何せん一般のユーザの知識や技術レベルではIPoE方式の設定は難し過ぎるのだ.メーカー側はなるべく複雑で難解な設定部分を隠して『簡単設定』を謳うのだが、それでも一般のユーザレベルでは設定する項目の意味が分からないだろう.
家庭用のルータの代表的な製品として、ユーザが多そうな”Buffalo” の最近の製品を引き合いに出して、その設定内容や仕様をマニュアル等で確認してみることにしよう.
・BUFFALO WTR-M2133HPシリーズ ユーザーズマニュアル
第3章 IPv6 (55頁〜)
BUFFALO WTR-M2133HPシリーズのIPv6設定画面
上記のダイアログの各項目に関する説明内容は、次の様になっている.
【IPv6接続方法】 IPv6での接続方法を指定します。ご利用の回線がどの接続方法を採用しているかは、 お使いのプロバイダーへご確認ください。 ・IPv6を使用しない インターネット回線がIPv6に対応していないときに選択します。 ・インターネット@スタートを行う インターネット回線の種類を自動的に判別し、インターネットに接続するまでの設定を自動的に行います。 IPv6 PPPoEには対応していません。 「パススルーを許可する」にチェックを入れると、インターネット@スタート の自動判別で 「IPv6パススルーを使用する」が選択される場合があります。 ・NTTフレッツ光ネクストを使用する プレフィックス長が64bitより短いNTTフレッツ 光ネクスト回線をお使いの場合に選択します。 (本設定は、通常は使用しません) ・IPv6ネイティブを使用する 後述の「IPv6プレフィックス取得方法」を設定する必要がある場合に選択します。 ・NDプロキシを使用する 下記の「IPv6パススルーを使用する」よりもセキュリティーを高めた動作モードで、 インターネット側とLAN側の間のIPv6通信に対して、ファイア ウォールやIPv6フィルターを適用します。 「ひかりTV」などのフレッツIPv6サービスを利用する場合に選択します。 ・IPv6端末モードを使用する IPv4 over IPv6通信サービスを使用しつつ、LAN内はIPv6を使用しない場合に選択します。 ・IPv6パススルーを使用する インターネット側とLAN側の間のIPv6通信に対して、ファイアウォールやIPv6フィルターを使用できない場合に 選択します。 メモ: IPv6パススルー(IPv6ブリッジ)を使用すると、インターネット側から本製品に接続している端末に アクセスできる場合があります。本製品に接続している端末のセキュリティー設定を確認した上でご使用ください。 【パススルーを許可する】 この項目にチェックが入っていると、「インターネット@スタートを行う」を選択している際、 インターネットとLANの間でIPv6パケットが通過できる「IPv6パススルー」が選択されることがあります。
うーん、この中から自分がどれを選べば良いのか分かるのだろうか?私でも思わず考え込んでしまうような内容だ...
更に、『・NTTフレッツ光ネクストを使用する』、『・IPv6ネイティブを使用する』を選択した際には、もっと詳細な項目まで手動で設定可能なようだ.この安価な家庭用無線LANルータでここまで設定可能にする必要があるのか甚だ疑問だけど、思っていた以上に細かな設定が可能で有ることにちょっと驚かされた.
【IPv6プレフィックス取得方法】 IPv6ネイティブを使用する」を選択した際に表示されます。 IPv6アドレスのプレフィックスを取得する方法を以下から選択します。 ・自動取得(DHCPv6-PD) DHCPv6サーバーから自動的にIPv6プレフィックスを取得します。 ・手動設定 IPv6プレフィックスを手動で入力します。グローバルプレフィックスを入力し、プレフィックス長を選択します。 メモ: IPv6プレフィックス取得方法を「手動設定」にした場合は、必ずIPv6デフォルトゲートウェイを設定して ください。 【LAN側IPv6アドレス自動配布方法】 「NTTフレッツ光ネクストを使用する」または「IPv6ネイティブを使用する」を選択した際に表示されます。 LAN側ネットワークにIPv6アドレスを配布する方法を指定します。 ・ステートレスアドレス自動設定で配布 Router Advertiseプロトコルを用いて、各ホストにアドレスを自動で配布します。 ・DHCPv6サーバーで配布 DHCPv6サーバー機能を利用して、各ホストにアドレスを自動で配布します。 この方法を選択する場合は、DHCPv6サーバーがアドレスを配布する時間、配布するアドレスの範囲を 「リース期間」「リース範囲」にそれぞれ設定します。 【IPv6デフォルトゲートウェイ】 「IPv6ネイティブを使用する」を選択した際に表示されます。 デフォルトゲートウェイとなるIPv6アドレスを入力します。 メモ: IPv6プレフィックス取得方法を「自動取得」にしている場合は設定する必要はありません。 「手動設定」にしている場合は、正しく入力しないとIPv6ネットワークと正しく接続できなくなります。 【LAN側サブネットID】 「NTTフレッツ光ネクストを使用する」または「IPv6ネイティブを使用する」を選択した際に表示されます。 LAN側ネットワークのサブネットIDを16進数で入力します。 【LAN側インターフェースID】 「NTTフレッツ光ネクストを使用する」または「IPv6ネイティブを使用する」を選択した際に表示されます。 本製品のグローバルアドレスのインターフェースIDを設定します。 【DNSサーバーの通知】 「NTTフレッツ光ネクストを使用する」または「IPv6ネイティブを使用する」を選択した際に表示されます。 IPv6アドレスがリースされた端末に対して通知するDNSサーバーのIPv6アドレスを設定します。
結局、一般のユーザで有ればデフォルトの『・インターネット@スタート』を選ぶしかないのではなかろうか.勿論、『・インターネット@スタート』が何を自動で設定しているのかユーザが知る術もなく、システムが勝手に ”IPv6パススルー(IPv6ブリッジ)” モードを選択してしまった場合には、ユーザは目も当てられないような悲惨な状況に陥ることを覚悟しなければならないという事だろう.
因みに、IPv6のパケットフィルタリングに関する設定も可能な様で、
第3章 IPv6フィルター(75頁)
【IPv6フィルター】 LAN側とインターネット側の間で通過するパケットに関するIPフィルターの編集を行う画面です。 IPv6接続の場合はこの画面で設定してください。 メモ: 以下の場合は、IPv6フィルターは動作しません。 • 前述のInternet > IPv6画面で、IPv6接続方法を「IPv6パススルーを使用する」に設定している場合 • インターネット@スタートの自動判別で「IPv6パススルーを使用する」が選択された場合
IPv6でのパケットフィルタリングも可能だけど、ブリッジ接続では機能しない
YAMAHAルータでの設定例
この記事を読んでいるような人達であれば、恐らく家庭用の簡易なルータではなく、業務用ルータによるIPv6接続を考えていることだろう.この手の小型業務用ルータとしては、ダントツでYAMAHAのRTX/NVRシリーズが選ばれていることだろう.
CiscoやJuniper、Alaxlaなどのエンタープライズ系ルータと較べると機能や性能は低いが、家庭用や小規模な事務所や店舗などの業務用としては必要十分な機能と性能だろう.但し、コマンド体系に少し癖があり、慣れていないと設定に戸惑うことが多い.
YAMAHAのルータは機種による機能の違いはあるものの、コマンド体系はほぼ同じなので一度覚えてしまえば、他のYAMAHA製品でも使い回しができる.むしろ、日本では小型業務ルータのデファクトスタンダード的な立ち位置なので、YAMAHAのルータ製品に習熟していることはNWエンジニアとしては必須だろう.
YAMAHAのルータ製品のコマンドリファレンスマニュアルはホームページで公開されている.
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/index.html
アルファベット順にコマンドが並べられているので、目的のコマンドを探すのはそれ程難しくは無いが、この手のマニュアルの宿命として、コマンドの機能の概要とフォーマット(パラメータ項目)の確認程度しか役に立たない.
YAMAHAルータの初心者であれば、最初は『ヤマハネットワーク機器の技術資料』や、『設定事例集』から、自分の行い設定に近い事例を探し出し、それを参考に自分流にカスタマイズして行くのが最も現実的な設定手順だろう.
YAMAHAのホームページにある、ルータ関係の資料はお世辞にも分かり易く配置されているとは言えなくて、目的のページに辿り着くまでかなり苦労する.古い記事から最新の記事までカオス状態だ.もう少し情報を整理してから公開して欲しいところだ.
IPoE関連の設定で役立ちそうなページを幾つか挙げておくと、
・『フレッツ 光ネクストでインターネット接続(IPv6 IPoE)を使用するには、どうすればよいですか?』
RAプロキシ(NDプロキシ)の設定例(ひかり電話契約なしの場合)
YAMAHAのルータでは、ひかり電話契約なしのIPoE方式でのIPv6設定は、通常ブリッジ(パススルー)方式ではなくNDプロキシ方式となる.WAN側のインタフェースを通じて受け取ったRAメッセージを基に、ルータがLAN側のインタフェースを通じて配下のPCやNW機器などにRAメッセージやDNSサーバ等に関する情報を通知する.
IPv6(IPoE)関係の設定コマンドは次のような設定になるだろう.LAN1がLAN側、LAN2がWAN側という設定である.
ipv6 prefix 1 ra-prefix@lan2::/64
ipv6 lan1 address ra-prefix@lan2::1/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
ipv6 lan2 dhcp service client ir=on
dns server dhcp lan2
1行目がIPv6 prefixの定義で、prefix定義番号を”1″番、proxy方式がRA方式でRAメッセージを受け取るインタフェースが “lan2” に、prefix長を64bitに設定している.
“ra-prefix@lan2::/64” (proxy方式 @ 受信インタフェース ::/ prefix長 )
2行目が、LAN(”lan1″)側のインタフェースに割り当てるIPv6アドレスの設定で、”lan2″ で受け取った IPv6 prefix 情報にインタフェースID 0x0001 を組み合わせて設定している.ここではインタフェースIDに “1”を指定しているが、ルータ側のアドレスは任意で構わないので、自分で “ra-prefix@lan2::1001:ffff/64” のように好きに設定すれば良いだろう.
3行目がLAN(“lan1”)側で配下のクライアントに通知するRAメッセージの設定で、prefix定義番号1番で定義された内容とオプションの(”othres”フラグ)を送出する設定を行っている.
4行目はLAN(“lan1”)側のクライアントに対して、ルータがDHCPサーバとして振る舞うための設定で、5行目はルータのWAN(“lan2″)側インタフェースがクライアントとして振る舞うようにするための設定で、上位のルータにIR(Information Request)を要求している.
最後の6行目はプロキシDNS機能の設定で、WAN(“lan2”)側で受け取ったDNSサーバ情報をLAN側の配下のクライアントに通知する設定を行っている.
YAMAHAのルータのIPoEの設定例は様々なWEBサイトに載っているので、そのままコピー&ペーストするだけで大抵は動くのだが、その中身をきちんと理解していないと自分の思い通りの構成を組むことはできないだろう.
DHCP-PDの設定例(ひかり電話契約ありの場合)
RA方式の場合と大部分同じように見えるが、IPv6のデフォルトルートとprefixの定義部分、それにNTTの光電話に関する特別な設定が1行目に加わっている以外、同じ内容であることに気付くだろう.
ngn type lan2 ntt
ipv6 route default gateway dhcp lan2
ipv6 prefix 1 dhcp-prefix@lan2::/64
ipv6 lan1 address dhcp-prefix@lan2::1/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
ipv6 lan2 address dhcp
ipv6 lan2 dhcp service client
dns server dhcp lan2
“ngn type lan2 ntt” はWAN(“lan2″)のインタフェース仕様を、NTT NGN網のひかり電話仕様に設定している.このコマンドが何を設定しているのか詳細は不明だが、NTT NGN網固有のインタフェース仕様のための設定のようだ.詳細を知りたければ、『IP 通信網サービスのインタフェース 第一分冊』に目を通しておくと良いだろう.
2行目はIPv6のデフォルトルートをDHCPv6により取得した上位ルータのIPv6アドレスに設定している.RA方式ではLAN側のPCやNW機器にNGN網側の上位ルータのIPv6アドレスが通知されるが、DHCP-PD方式ではLAN側のPCやNW機器には、ルータのLAN側のIPv6アドレスがデフォルトゲートウェイとして通知されるので、ルータにIPv6の”Next Hop”先を設定する必要があるためだろう.(現時点では単なる推測です:後で検証しておきます)
RA方式とDHCP-PD方式でのIPv6アドレス定義に関する違いは、prefix定義部分のproxy方法設定部分だけで、prefix_typeが “dhcp-prefix” に変わっているだけだ.
”dhcp-prefix@lan2::/64″
残りの部分はRA方式と全く同じだ.