Click


前回へ indexへ 次回へ

■PCをローカルルータに
 ~Windows 98 SE/2000のインターネット接続共有機能

 ローカルルータのテストが終り原稿も一通り出し終えたところで、ルータの撮影が行なわれることになった。こうなると、ルータがみんないなくなってしまうわけで、「PCにルーティングさせる方法については、折を見てまた試してみたいと思う」と言い切ってはじめたものの、早くも折を見なければならないことになってしまった。筆者のテストマシンには、Windows 98 Second EditionとWindows 2000 Professionalがインストールされているので、これをそのまま臨時ルータに仕立て上げられれば、とりあえず急場をしのぐことができる。

 Flex Routerに使われていたfloppyfwもフロッピーベースなので、即戦力として有望なのだが、標準でサポートしているネットワークカードが次の4種類に限定される。

 ・3com 3C509
 ・NE2000互換
 ・Tulipベース
 ・Intel EtherExpress

 3C509とNE2000は、ISA時代に広く普及した(まだ現役だが)10Mbpsのネットワークカードで、NE2000互換カードに関しては、旧来のISA仕様のほかにPCI仕様の製品も1,000円程度で入手できる。TulipはDEC 21x4xチップのことで、10/100Mbps対応のちょっと高めのネットワークカードに、このチップを使った製品がある。Intel EtherExpressはいうまでもなく、10/100Mbps対応のIntelのネットワークカード。本物はちょっと高目だが、互換カードは結構安く出まわっている。PCをルータに仕立て上げるつもりなら、この辺を2枚買って来れば、(おそらく)簡単にローカルルータが構築できるだろう。

ICSを使った接続

 今回は、テストマシンに入っているカードがこれらに該当せず、カーネルを再構築しなければ試せないので、とりあえずパス。Windowsを使って、臨時ルータを立てることにした。既にWindowsベースでLANを組んでいる方なら、マシンの1台にケーブルモデムを接続するためのネットワークカードを追加するだけで、簡単にルータ代わりになる。かかるコストは1,000~2,000円なので、ケーブルモデム共有の第一歩として試してみる価値は大きいだろう。

 Windowsをルータにするためには、Windows 98 SE/2000に新しく追加された「インターネット接続共有(ICS~Internet Connection Sharing)」という機能を使用する。したがってケーブルモデム用のルータになれるのは、これらいずれかのOSがインストールされていて、なおかつケーブルモデム側とLAN側の計2枚のネットワークカードを組込む余裕のあるマシンに限定される。加えて、インターネットアクセス時には、ルータ役のマシンを起動しておかなければならないのはもちろん、98 SEの場合は一度ログオンしておかなければいけないし、ルータにするとサスペンドできなくなる等の制約もある(ルーティングによるCPUパワーの消費自体は大したことはない)。


●98 SEと2000の違い

 ICSには、ひとつのIPアドレスを共有するためのNAT/IPマスカレード機能、LAN側のマシンを自動設定するためのDHCPサーバ機能、DNSプロキシ機能が組込まれている。これに、従来からあるDHCPクライアントを加えると、一般的なホームネットワークに必要なルータ機能がひととおり揃う。ちなみにライセンス上、ICSを使って同時にインターネットにアクセスできるクライアント数は、98 SEで5台、2000 Professionalで10台までに限定される。

 98 SEと2000の機能面での違いは、一見すると、ポートやフィルタの設定機能がある分、2000の方が機能があるように見える。が、Microsoftが公開している情報を活用すると、両者の立場は逆転してしまう。98 SEの方がより柔軟なのだ。おそらく2000 ProのICSは、2000 Server(ICSとは別にNATモジュール、DHCPサーバ、DNSサーバが個別に用意されている)との差別化のために機能が制限されているのだろう(インプリメントされていないのか設定方法が公開されていないだけなのかは不明)。

 以下、98 SEと2000のICSの違いをざっと述べておく。

【DHCPサーバ】

 98 SEは、設定用のGUIこそ無いが、レジストリベースでサーバ機能の有効/無効、サーバのIPアドレス、クライアントに配布するアドレス範囲等が設定できる。2000に関しては、設定変更に関する情報は無く、できないことになっている。ただし、LAN側のネットワークアドレスを規定値(192.168.0.1)から変更することによって、DHCPサーバが無効化することを確認している。

【DNSサーバ】

 ICSに組込まれているのは、LAN内のクライアントとISPのDNSサーバの中継を行なうプロキシ機能で(本格的なDNSサーバは2000 Serverからのサポート)、これも98 SEはレジストリで有効/無効を設定できるが、2000の方はできない。

【ポートフォワード】

Windows 2000のマッピング設定

 2000のICSには、設定用のダイアログボックスが用意されており、「アプリケーション」と「サービス」の2種類のフォワーディングをダイアログボックスで設定できる。「アプリケーション」は、LAN内から外部のサーバに接続し、折り返しそのサーバから別のポートに接続してくるケースを想定したもので、一部のオンラインゲームやメッセージングソフト等は、これで対処できるかもしれない。デフォルトでは、ダイアログには何も登録されていないが、FTPなどはちゃんと動作している(パッシブモードでアクセスする必要はない)。「サービス」は、LAN内のサーバを外部に公開する際のフォワーディング設定である。Webサーバなどの主要なサーバが登録済みなので、必要があればアドレスを指定して有効にすればよい。

 98 SEには、設定用のインタフェースは用意されていないが、レジストリで同様の設定が行なえる。FTPやCuSeeMe Quake、DirectPlay等、予めいくつかのアプリケーション用のマッピングが登録されており、デフォルトで有効になっている。


【フィルタ】
 2000の場合は、NT時代から簡単なパケットフィルタが備わっており、これを利用することによってフィルタリングが行なえる。デフォルトは全て通過で、設定を変えることにより、特定のプロトコル、TCP/UDPポートだけを通過させるように構成できる(IPアドレスによる制御はServer版から)。

 98 SEの方は、ポートフォワードの延長で組込まれており、特定のポートやポート範囲を遮断することができる。標準では、TCP/UDPポートの135~139番(Windowsのファイル/プリンタ共有)をブロックする設定が組込まれている。

Windows 2000のフィルタ設定

 ICSのセットアップ自体は、LAN側とインターネット側の2枚のネットワークカードの方向さえ間違えなければ、特に難しいことは何もない。一般的なセットアップ例は別項にまとめておくのでそちらを参照していただきたい。参考までに、既にDHCPサーバとDNSサーバがあり、アドレスも決まっている筆者のLANで、既存のルータととり替えるためにとったイレギュラーなセッティング方法も、それぞれご紹介しておく。LAN側に特定のIPアドレスを割り当て、DHCPサーバに死んでもらうという、ホームLANにあるまじき環境ではあるが、プライベートアドレスしか配布してもらえない不幸なCATV局下で、配布されたアドレスがたまたまICSのLAN側アドレスとバッティングしてしまったケースにも応用できるだろう。

(2000年6月14日)

[Text by 鈴木直美]


【PC Watchホームページ】


ウォッチ編集部内PC Watch担当 pc-watch-info@impress.co.jp