最近、IPv6に関する動きが盛んです。「IPv6なんてまだ必要ない」という意見も聞かれたりしますが、IPv4に限界が見えている以上、遅かれ早かれIPv6への流れは必然だといえます。長期的視点で見れば、いまはまだ導入の段階に至っていなくても、将来的な導入に備えて知っておくべきことはいろいろあるはず。導入の際に役立つノウハウ、最新情報など、まとめて連載形式でお届けします(編集局)
ここ数年で、アジアやヨーロッパでIPv6を盛り上げる動きが盛んになっている。その中でも、日本の動きが世界で一番早い。ところが、実際にIPv6ネットワークを運用する経験を持っているネットワーク管理者は、それほど多くないのが現状であると推測される。
本連載では、企業LANをIPv6対応させるときに気を付けるべきことを説明しながら、IPv6ネットワーク構築のノウハウを具体的に説明していく。今回はまず「自社ネットワークをIPv6化する」といったときに、考えるべきポイントをピックアップする。
@ITの連載「IPv6ネットワークへの招待」でも述べられているように、IPv6はIPv4時代のインターネットを根本的に変革する技術ではない。極論すると、IPv4のアドレス幅を32bitsから128bitsに拡張しただけである。そのほかは、IPv4と基本的な考え方は変わっていないので、IPv4ネットワークを管理できる人にとって、IPv6ネットワークを管理することはそれほど難しくはないはずだ。
しかしながら、アドレス幅が広くなったことにより、IPv6はIPv4に比べてさまざまな利点を有することになった。企業網をIPv6化することの意義は、IPv6に対応するための投資コストに比べて、その利点によって得られるメリットでペイすることにある。仮に今はペイしなかったとしても、将来ネットワークをIPv6対応させるときのためにも、IPv6化を考慮に入れておくことだけは必要だろう。
以下、IPv6化の利点について詳説する。
一番大きい利点でありながら、誤解を招きがちな点でもあるので、詳しく説明しておく。
もともとNATは、IPv4グローバル・アドレス不足の短期的な解決策として導入された技術である。しかしながら、NATは内部ネットワークを外部から直接見えなくさせる機能も持ち合わせているため、現在ではNATといえば、そちらの機能のほうが重視されるといっても過言ではない。
「IPv6化してNATが不要になる」といわれるのは、前者のグローバル・アドレス不足問題が解決されることだけを意味する。この問題解決により、具体的には以下のような効果をあげることができる。
IPv6ネットワーク運用では、通常1セグメントに「/64」のプレフィックス*1を割り振る。理論上、1セグメントには2の64乗個のアドレスが存在しうる。ゆえに「このセグメントには100台端末があるから余裕を見て/24を割り振ろう」などというような、台数見積りを基にしたアドレッシングが不要になるのである。
IPv6では1セグメントに2の64乗個のアドレスが存在するからといって、企業網全体を1つの「/64」でまかなうことを強いられるわけではない。経路制御やフィルタリング・ポリシーの関係でセグメント分けした方が楽なのは、IPv6でも同じだからだ。
では、IPv6ではいくつの/64のプレフィックスを用いることができるのだろうか? プレフィックスの取得元にもよるが、大抵の場合は/48のプレフィックスをもらうことができる。各セグメントに安直に/64を振っていっても、通常もらえる/48だと「2^16=65535セグメント分」(IPv4のクラスAのブロックを1つもらったのと等価)ある。これだけあれば普通は十分余るくらいだろう。
ただし、大企業だとそれでも間に合わない可能性があるので、もう少し広いプレフィックスをもらうことを考えた方がいい。ただし/48のプレフィックスをもらう場合とは異なり、/48よりも広いプレフィックスを取得するには/48のプレフィックスでのIPv6ネットワーク運用経験などが要求される。そのため、最初は/48のプレフィックスを取得して運用経験を積んでから、より広いプレフィックスを取得されることをお勧めする。
当然のことだが、NATがなければプライベート・アドレスとグローバル・アドレスとの対応付けを定義する必要がなくなる。
Instant MessageやVoIPに代表されるPtoPアプリケーションの多くは、NAT越しには動かない。もちろん、NAT内部の端末同士ならこれらのアプリケーションを使うことはできるが、下の図1のように、同じ会社のネットワークに一時しのぎで作ったNATが複数あるようなケースには対応不能である。
*1IPアドレスにおける「ネットワーク・アドレス」を示すもの。「/64」「/48」といった数字は、ネットワーク・アドレスのサイズを規定するもので、残りビットの数のホストにアドレスを割り当てることができる。例えば/64であれば2の64乗個、/48であれば2の80乗個のホストにアドレスを割り当てることが可能である(つまり、数字はネットワーク・アドレスのビット数を表している)
一般に、NATについては「IPv6でNATが不要になると、NATで内部ネットワークを見えなくする機能が使えなくなるので危険である」といわれることが多い。しかしながら、これはあまり正しくない指摘である。
そもそも内部ネットワークを外から見えないようにフィルタリングや経路制御の設定をすることは、IPv6でも当然可能である。 NAT不要で危険だという指摘は、「“何もしないと”IPv6では内部ネットワークが外から丸見えになる」ということを意味しているに過ぎず、正しく設定すれば、IPv6でも外から内部が見えなくなるようなネットワークを構築することは可能である。
しかも、その手間はIPv4でもIPv6でも大差ない。「NATがあれば結構お手軽にセキュリティを確保できるのでは?」と思われる方もいらっしゃるかもしれないが、それは大きな間違いだ。このことは、Nimdaなどのようなメールを媒介にして感染するウイルスがNATの中にまで侵入している昨今の状況を見ていただければ、一目瞭然だろう。
IPv6では、プロトコル自体にプラグ&プレイ機能が標準装備されている。そのためIPv4とは異なり、アドレス配布用にDHCPサーバを設定する必要はないし、エンド・ユーザーに対して「あなたはこのアドレスを使いなさい」といちいちアナウンスする必要もない。
プラグ&プレイが標準装備されているということは、PCをつなぐと必ずIPアドレスがもらえてしまうことを意味する。企業網を管理される方の中には、「そんな危険なものは使えない」と思われる方もいらっしゃるかもしれない。しかしながら、それは杞憂ではないだろうか、というのが筆者の意見だ。PCをネットワークにつなげば流れるパケットの中身を覗くことができるし、その中身からそのネットワークで使えるIPアドレスを類推することも容易にできるだからだ。別の言葉でいうと、アドレスを自動配布することが問題なのではなく、そもそも知らない人のPCが勝手に物理的にネットワークにつながれてしまうことが問題なので、「プラグ&プレイが危険だ」というのは指摘するポイントがずれているということだ。
IPv6のプラグ&プレイでは、DNSサーバのアドレスをプラグ&プレイする仕組みがないのが唯一の弱点である。万国共通の、ある固定のIPv6アドレス(well-known anycast address)をDNSサーバ用に設定しておくことにより、エンド・ユーザーのDNSサーバの設定の手間を軽減することが可能である。万国共通の固定されたDNSサーバ・アドレスを使う方法のほかにも、現在のIPv4と同様にDHCPでDNSサーバのアドレスを配ることもできる。
今後数年で、IPv4グローバル・アドレスが枯渇することが予測されている。そのため、IPv4グローバル・アドレス取得が困難になると同時に、IPv6が当り前のように普及することが予想される。
特に機器更新などに伴って新しくネットワークを組み直す場合は、最初からIPv6を考えておくことをお勧めする。IPv6を設計段階から頭に入れておくことにより、いまIPv6を導入しないにしても、後からいざIPv6を入れるとなったときに、あたふたしなくても済むはずだ。
以下の図2で紹介する企業網を例にとって、企業網にIPv6を持ち込むとしたら、どこをどんな順番でIPv6化していくべきなのかを列挙していく。各個所のIPv6化の方法については、連載の次回以降で説明していく。
やり方としては、
といった方法がある。下にいくほどお金はかかる方法であるが、IPv6とIPv4との干渉*1を防ぎやすいというメリットがある。
*2IPv6だけで帯域を確保してしまい、IPv4で使う帯域がなくなってしまうこと
やり方としては、
といった方法がある。下にいくほどお金はかかる方法であるが、IPv6とIPv4との干渉を防ぎやすいというメリットがある。
そのほか、イーサネット系のネットワーク限定の手としては、プロトコル単位でVLANを切っても対応可能である。物理的には同じ線で、論理的にIPv6対応のセグメントとIPv4対応のセグメントとを分離することになる。
いろいろな手はあるが、一番簡単なのは最初からIPv6対応済のOSを使うことである。現在では、Windows XP/FreeBSD/SolarisといったOSが最初からIPv6対応済だ。
いろいろなサーバがあるが、一番重要なのはDNSサーバである。何はともあれ、DNSでIPv6アドレスを扱えないことには、エンド・ユーザーが128bitsのIPアドレスを記憶しないといけなくなり、IPv6が使い物にならないからである。
ただし、DNS query自体をIPv6経由で行う必要は当面はない。IPv4でDNSサーバとの通信を行い、ホスト名に対応するIPv6アドレスを検索することができれば十分使い物になるからだ。最もメジャーなDNSの実装であるBINDでは、古くからホスト名に対応するIPv6アドレスを検索する機能をサポート済みなので、大抵の企業のDNSサーバでは、IPv6アドレスを登録することが可能なはずである。
そのほか有名どころのフリーなサーバ・アプリケーションのほとんどは、IPv6対応を完了している。一般に使われそうなものでIPv6化が完了していないのは、「Windowsファイル共有」「NIS」くらいのものだ。ゆえに、これらサーバをIPv6化する作業というのは、実質、ソフトウェアのバージョンアップとIPv6関連の設定ファイルを書くことくらいなものである。
サーバ種類 | 対応ソフト名など |
---|---|
HTTPサーバ | squid/apacheなど |
SMTPサーバ | sendmail/qmail/postfixなど |
POPサーバ | qpopperなど |
IMAP4サーバ | cyrus/imapdなど |
LDAPサーバ | openldap |
アクセス・フィルタ | 大抵のIPv6対応ルータには実装済 |
SNMPサーバ | MIBを採取することは可能 |
表1 各種サーバのIPv6対応状況 |
IPv6ホストからIPv4ホストへ通信するためのプロトコル変換装置。パケット単位で変換するもの、TCP/UDPのセッション単位で変換するもの、HTTPなどの特定のプロトコルのみ変換するものがあり、用途に応じて使い分ける必要がある。
意外と忘れられがちだが、このあたりをIPv6対応させておかないと、事実上運用はできない。具体的には、以下のようなことを気を付けておけばいいだろう。
特に固定アドレスでのフィルタリングは、IPv6では事実上使いものにならない。IPv6には「privacy extention(RFC3041)」という仕様があり、128bitsアドレスの下位64bitsを定期的に変えながら通信する仕組みがONになっているIPv6実装もあるからである(代表例はWindows XP)。
企業網をIPv6化するとはいっても、IPv4を駆逐することにはならないはずである。IPv4と似たルールでIPv6も運用できると、エンド・ユーザーには分かりやすいはずだ。
前述したように、経路制御やパケット・フィルタの設定により、外部から内部を覗けないようにすることはできるが、それ以上細かいフィルタリング*2をIPv6で実現可能な商用製品は、2002年5月現在存在しない。
そのため、最初は外部とは通信しない、もしくは仮にクラックされても大丈夫な実験ネットワークで運用経験を詰むなどしつつ、IPv6運用への慣れやIPv6ファイアウォールの商品リリースのタイミングを見ながら、徐々に外部と通信を行うように進めるのが一番素直なやり方だろう。
*2例えば、ウイルスを含んでいないメールは内部に通すなどの設定のこと
企業網に実際にIPv6を導入する段階となったときには、前項で述べたIPv6化ポイントを、どの順番でIPv6対応させていくかを考えていく必要がある。その方法はいろいろあるが、おおまかにいって下の2つの方法に分けられるだろう。もちろん、実際には両者の折衷案だったりフェーズがオーバーラップしていたりすることになるだろう。
本連載では、次回以降「外から攻める方法」のアプローチで説明していくが、どちらの方法がいいかは企業網によりけりなので、ご自分の管理されているネットワークに照らし合わせて最適な方法を考える必要があるだろう。
管理者主導でIPv6化を進める方法。管理者は安心して導入できるが、一般ユーザーへの教育がやや大変。
一般ユーザー主導でIPv6化を進める方法。一般ユーザー側から草の根的に作られたネットワークなら、こちらの方が早い。逆に管理者の教育がやや大変。
次回からは、外側からIPv6対応にしていくアプローチを基本に、各要素をIPv6対応していきます。まずは、IPv6環境における対外線接続に関する部分から解説します。
Copyright © ITmedia, Inc. All Rights Reserved.