coLinux(0.8.x)のインストール その5: ネットワークの設定

試したことをとりあえずメモに!
スポンサーリンク

このページでは、coLinuxのネットワーク環境について説明します。

coLinuxではいくつかのネットワーク接続方法が利用できますので、 自分の環境に合った接続方法を選択してください。

スポンサーリンク

ネットワークの設定

最初にも述べましたが、 coLinuxをネットワークにつなげるには 仮想ネットワークドライバTAP-Win32を使う方法と、 パケットキャプチャプログラムWinPCapを使う方法があります。

さらにTAP-Win32を使った場合は、 Windowsの設定によってNAT接続・ルータ接続・ブリッジ接続があります。 ただ、残念ながらブリッジ接続はWindowsXPでないとダメなようです (後述するようにWindows2000でブリッジ接続できるにはできますが、 いろいろな工夫が必要です)。

私の経験では、TAP-Win32を使った方が安定性が高いような気がします。 しかしWindows2000では、TAP-Win32を使った場合に ブリッジ接続ができないのが悩ましいところです。

(以下の図では赤の点線で囲まれている部分が Host PC内で動作している部分です)

TAP-Win32を使ったNAT接続

これは、Host PCにインストールしたTAP-Win32とcoLinuxを 仮想ネットワークで接続する方法(下図参照)です。 この場合、 Host PCは2つの別々のネットワークに接続されている状態なります。 この状態でHost PCは、仮想ネットワーク側から来たデータを、 自分自身が発信したデータに変換(NAT)してLAN側に転送します。

利点としては、 本物のLANとcoLinuxが繋がっているLANが分離されているので、 coLinuxで何か設定に失敗した場合でも 本物のLANの方に悪影響がでる可能性が少ない点です。 Host PCのネットワークの設定が変わっても、 coLinuxの方には変更が不要な点も魅力です。 ノートPCにcoLinuxを入れて、 自宅と職場の両方で使う場合などに最適でしょう。

欠点は、 本物のLAN上のPC(例えば下図のLinux Server)からcoLinuxに アクセスすることができないということです(coLinuxからは可能)。 Host PCをNATルータとして動作させると、 一種のファイアウォールのようになってしまい、 仮想ネットワークへ向かうデータ通信を シャットアウトしてしまうからです。

network-nat

TAP-Win32を使ったルータ接続

これは、Host PCにインストールしたTAP-Win32とcoLinuxを、 仮想ネットワークで接続する方法(下図参照)です。 この図は上記のNAT接続の場合と一緒です。 異なる点は、Host PCがデータの変換(NAT)は行わず、 LAN側から来たデータを仮想ネットワーク側に、 仮想ネットワーク側から来たデータをLAN側に単純に転送する点です。 つまり、Host PCは単純なルータとして機能します。

利点は、本物のLAN上のPCからcoLinuxへ アクセスすることができるようになる点です(ちゃんと設定すればですが)。

欠点は、設定が大変な点です。 本物のLAN上の全ての機器に、 仮想ネットワークの情報(ルーティング情報)を教えなければいけません。 特にADSLモデムにそのような設定ができるかどうかがポイントです。 ADSLモデムにルーティング情報を追加できない場合は この方法はお勧めできません。

network-router

TAP-Win32を使ったブリッジ接続

これは、Host PCにインストールしたTAP-Win32とcoLinuxを、 仮想ネットワークで接続する点では、最初に紹介した方法と同じです。 しかし、この方法ではHost PCが2つのネットワークをブリッジするので、 全体で一つのネットワークとして扱うことができます(下図参照)。

この方法は、LAN上の機器の設定が必要なく、 そのままcoLinuxが既存のLANに接続されたように見えるので、 何かと便利です。 Host PCがWindows XPの人はこの方法が良いかもしれません。

ようやくWindows2000でも、 TAP-Win32を使ってブリッジ接続することに成功しました。 秘訣はetherbridgeというフリーソフトです。 詳しくは「Windows2000でTAP-Win32ドライバを使ったブリッジ接続」を見てください。

network-bridge

WinPCapを使ったブリッジ接続

これは、インストールしたWinPCapの機能を使って coLinuxを既存のLANに参加させる方法(下図参照)です。 具体的には、 Host PCのネットワークインターフェースが受信するデータを WinPCapが横取りしたり、 coLinuxが送信するデータをWinPCapが割り込ませたりすることによって 実現しているようです。

利点としては、 既存のLANにcoLinuxをそのまま参加させることができるので、 他のPCの設定を変更する必要がなく、 LAN内のPCとの通信にも制限がありません。 また、試してはいませんがLANでDHCPサーバが動いていれば、 coLinuxをDHCPクライアントとすることができるかもしれません。

欠点としては、 coLinuxとLAN間の通信を、WinPCapがデータの横取りしたり、 割り込ませることにより通信を実現しているので、ちょっと不安な点です。 実際に運用して問題になることはほとんどないかと思いますが・・・。 また、通信速度もTAP-Win32を使う場合よりも遅いようです。

    <p><img title="network-winpcap" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="network-winpcap" src="//scratchpad.jp/wp-content/uploads/2015/03/network-winpcap.jpg" width="665" height="347" />

コメント

タイトルとURLをコピーしました