Windowsのレジストリを設定してIPルーティングを有効にする(WindowsマシンをIPルーターにする)Tech TIPS

1台のPCに複数のネットワークインタフェースを装着すれば、IPルータとして利用できる。Windows OSではレジストリを変更するか、サーバOSに付属のGUIツールを使って設定を変更すれば、IPルーティングを利用できるようになる。

» 2004年07月17日 05時00分 公開
[打越浩幸デジタルアドバンテージ]
Tech TIPS
Windows Server Insider


「Tech TIPS」のインデックス

連載目次

対象OS:Windows 2000 / Windows XP / Windows Server 2003



解説

 1台のPC(Windows OSマシン)に2つ以上のネットワークインタフェースを装着して、2つのネットワークインタフェース間でパケットを転送(IPルーティングやIPフォワードと呼ぶ)するように設定すると、ルータ(IPルータ)として利用することができる。Windows OSのデフォルト設定ではこの機能は無効になっているので、1台のPCにいくつネットワークインタフェースを装着してもルータとしては機能しない。この場合は、単に同時に複数のネットワークに接続することができるだけである。

 だがIPフォワードの機能を有効にすることにより、ルータとしても利用することができる。離れた場所にある複数のネットワークを接続したり、実験的に構築したネットワークを接続したりするためには、専用のルータを導入しなくても、Windows OSマシンを専用ルータ代わりに利用できる。

●IPルーティングの有効化の方法

 Windows OSでIPルーティング機能を有効にするには、レジストリを操作する方法と、GUI画面を使って設定する方法の2通りがある。ただしGUI系の画面を使って設定できるのはサーバ系のOSで「ルーティングとリモート アクセス」サービスを利用する場合だけである。これに対してレジストリを操作する方法は、すべてのOSで利用することができる。このTIPSでは、レジストリを変更する方法を紹介する。

操作方法

[注意]

レジストリに不正な値を書き込んでしまうと、システムに重大な障害を及ぼし、最悪の場合、システムの再インストールを余儀なくされることもあります。レジストリ エディタの操作は慎重に行うとともに、あくまでご自分のリスクで設定を行ってください。何らかの障害が発生した場合でも、本Windows Server Insider編集部では責任を負いかねます。ご了承ください。


 IPルーティングを有効にするには、以下のレジストリの値を1にセットする(IPEnableRouterが存在しない場合はDWORD型で値を作成する)。

項目
キー HKEY_LOCAL_MACHINE のSYSTEM\CurrentControlSet\Services\Tcpip\Parameters
名前 IPEnableRouter
種類 REG_DWORD
データ 1
IPルーティングを有効化するためのレジストリ値

 レジストリの変更後、システムを再起動するとIPルーティングが有効になっているはずである。コマンド・プロンプト上で「ipconfig /all」コマンドを実行し、「IP Routing Enabled」の値が「Yes」となっていれば、設定は完了している。

C:\>ipconfig /all

Windows IP Configuration

        Host Name . . . . . . . . . . . . : PC123
        Primary Dns Suffix  . . . . . . . : sys.d-advantage.com
        Node Type . . . . . . . . . . . . : Hybrid
        IP Routing Enabled. . . . . . . . : Yes ……IPルーティングが有効
        WINS Proxy Enabled. . . . . . . . : No
        DNS Suffix Search List. . . . . . : sys.d-advantage.com

Ethernet adapter ローカル エリア接続:

        Connection-specific DNS Suffix  . : sys.d-advantage.com
        Description . . . . . . . . . . . : Intel(R) PRO/100 VE Network Connection
……(以下省略)……



 以上の設定を確認後、必要ならば「route add(一時的なルーティング情報の追加)」や「route -p add(恒久的なルーティング情報の追加)」コマンドなどを使って、ルーティング・テーブルの設定を行っていただきたい(詳細はTIPS「ルーティング・テーブルを操作する」を参照)。

 実際にIPルーティングが機能しているかどうかは、「netstat -s」コマンドによって確かめることもできる。このコマンドを使ってIPv4の統計情報を表示させ、「Datagrams Forwarded」という名前のカウンタの値をチェックする。ここにはルーティング(IPフォワード)されたIPパケットの数が記録されているので、0でなければIPルーティングが正常に行われているということが分かる。netstatコマンドについてはTIPS「netstatの統計情報を活用する」を参照していただきたい。

C:\>netstat -s -p ip

IPv4 Statistics

  Packets Received                   = 121914015
  Received Header Errors             = 6
  Received Address Errors            = 369
  Datagrams Forwarded                = 111150768 ……フォワードされたIPパケット数
  Unknown Protocols Received         = 0
  Received Packets Discarded         = 932923
  Received Packets Delivered         = 8577136
……(以下省略)……



■関連リンク


「Tech TIPS」のインデックス

Tech TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。