Internet Watch logo
記事検索
バックナンバー
(5)SoftEtherはセキュリティにとって危険か?
[2004/02/06]
(4)SoftEtherを試してみる――その3
[2004/02/05]
(3)SoftEtherを試してみる――その2
[2004/02/04]
(2)SoftEtherを試してみる――その1
[2004/02/03]
(1)SoftEtherとは
[2004/02/02]

SoftEther入門

(3)SoftEtherを試してみる――その2

TEXT:大和 哲

 さて、今回は仮想ハブを設定してみよう。
 仮想ハブは、その名前のとおりソフトウェアで仮想ネットワークでのハブをシミュレートしており、SoftEtherで構築するネットワークの要となるソフトウェアだ。

 前回説明したのネットワーク構成なら、オフィスPCにインストールした仮想ハブを設定することになる。



仮想ハブの設定

 マシンにインストールした仮想ハブの設定を行なうには、「仮想HUB管理クライアント」を使う。この管理クライアントは、単純な仮想ハブと接続したTELNETクライアントで、そのため、見かけはWindows のコマンドプロンプトに文字でメニューが表示されているだけのように見える(ただし、これも将来的にはGUIにすることも考えられているそうだ)。このため、とっつきにくいユーザーインターフェイスではあるが、設定自体はさほど難しくない。

 最初に、パスワードを設定して、それから、最小限の設定としては「ユーザーの追加」、「仮想HUB IDの設定」をしておけば良い。

 SoftEtherでは、ソフト的なハブをネット上に置くことになるので、ひとつ間違うと悪意の第3者に勝手にハブを接続されてしまうことにもなりかねない。そこで、物理的なハブと違い、接続にIDとパスワードを設定して、このIDとパスワードがなければ接続できないように設定することができる。

 そのための設定が「ユーザーの追加」だ。

 また、「仮想HUB ID」というのは、SoftEtherでは、1つのマシンに複数の仮想ハブを動かすことができる。そのための番号付けだ。1台だけで使う場合はデフォルトの「0番」を利用することになるので、マニュアルにあるように、ここは何も入力せず、デフォルトのまま設定すれば良い。

「仮想HUB管理クライアント」を使った仮想ハブの設定。とっつきにくそうに見えるが、最低限「ユーザー作成」と「HUB IDの設定」を行なうだけなら、それほど難しくはない



外部との通信をする場合は、ルータの設定を

 仮想ハブは、動作としては、本当のネットワークインターフェイスのあるポートにデータが来るのを待っている。仮想LANカードからデータが来ると、接続を確立。接続されると、仮想LANカードとデータのやりとりを仲介する、ある種のサーバーのような仕組みになっている。

 もし、SoftEtherを使って外部のネットワークにあるPCと仮想のネットワークを組むのであれば、実際のネットワークでも、外部の仮想LANカードが、この仮想ハブの使っているポートへ接続できるようにしておかなくてはならない。いわゆる「ポートを空ける」という操作をするわけだ。

 たとえば、ブロードバンドルータなどを使ってインターネットに接続している場合、通常、特に設定をしない限りは、ルータから内側のLANには複数のPCを使うことができるようにNATやIPマスカレード機能を利用することで、WAN側では1つのアドレスを、LAN内では複数のアドレスを使っているはずだ。

 このようなアドレスの使い方をしている場合、内部のPCが外部(インターネット)のサーバーにアクセスする際は、ルータが、内部のどのPCが出したリクエストがどの外部からの応答かを見分けて通信を割り振ればいいかを考えればいいだけなので、あまり問題ない。ところが、単純に外部から内部へ「通信をしたい」という要求が来ても、内部のどのマシンにその要求を転送していいかわからない。そこで、ふつう、ルータには、「このポートに要求があったらLANないのどのマシンにその要求を転送する」という設定、「ポートフォワードディング」という機能がある。

 ブロードバンドルータなどを使ってインターネット接続している場合、この機能を使って、インターネットからのSoftEtherの仮想ハブへの接続の要求を、仮想ハブを動かしているマシンに転送するようにしなければならない。

 具体的には、SoftEtherの仮想ハブは、デフォルトでは、TCPポートの7777および443で仮想LANカードからのデータを待っている。したがって、このポート番号を変更していない場合は、TCPポート7777および443へのデータ要求は、仮想ハブマシンへ転送するようにルータの設定をしておこう。

筆者宅でのブロードバンドルータ設定例。SoftEtherが使うTCPポート7777と443への通信はSoftEtherの仮想HUBマシン(ここではShiogohan 192.168.1.4)に転送するようにポートフォワーディング設定している



リアルと仮想をつなぐブリッジ設定

 現在、仮想LANが入っているマシンに関して考えて欲しいのだが、これには、実際にはLANカードが1枚しか入っていなくても、Windowsからはもう1枚仮想のLANカードが入っているように見える。つまり、1台のマシンに2枚のLANカードが入っていて、それぞれ独立して動いているように見えるわけだ。

 普通、この2枚のLANカードには、それぞれIPアドレスを振って、パソコンは、2つのネットワークに属しているように振舞う。

 Windows XPの場合、「ブリッジ機能」を利用すると、この2つをまとめてひとつのカードとして利用することができる。これは、簡単に言うと、PCの複数のネットワークアダプタを1つのネットワークから、もう1つのネットワークへの橋渡しにする、という機能だ。

 接続した仮想ハブと仮想LANカードはそれだけで立派な仮想ネットワークになっているわけだが、しかし、仮想ネットワークだけでは機能的に足りない部分がいくつかある。

 たとえば、アドレス割り振りの問題だ。普通、LANでは、たとえば、各マシンに「192.168.1.1」、「192.168.1.2」……というように、それぞれ、違うIPアドレスを割り振るのが普通だ。たとえば、ネットマスクを「255.255.255.0」というようにしておくと、PCが通信する際に、最初の3つの数字、「192.168.1」の部分が同じならばLAN内、そうでなければLAN外と判別してルータ越しにインターネットとの通信を行なう。また、「192.168.1.1」への通信が来た、とルータがネットワーク内に通知すれば、自分への通信だ、ということがPCにはわかるわけだ。

 仮想ネットワーク内では、たとえば、DHCPサーバーのような機能はないので、マシンに手動で1台ずつアドレスを割り振るか、さもなければWindows XPのプライベートアドレス割り当てに頼るしかない。

 しかし、リアルなLAN上にDHCPサーバー機能を持つルータを使っている場合は、Windows XPでリアルなLANと仮想LANの橋渡しをしてもらえば、仮想LANのほうにもIPアドレスを割り振ることができる。

 たとえば、このDHCPサーバーがLAN内に「192.168.1.10」から始まるIPアドレスを自動的に振っているとしよう。仮想LANカードを利用しているマシンからこのハブに接続すると、ハードウェアのLANカードはそのネットワークのアドレスがあるが、それとは別に仮想LANカードには、このLAN内に振られる「192.168.1.xx」というアドレスを割り当てられる。これにより、晴れて仮想LANカードをインストールしたマシンもLAN内のマシンとしてふるまうことができる、というわけだ。

 Windows XPのネットワークのブリッジ設定の方法は簡単だ。コントロールパネルのネットワークからブリッジ設定にしたい複数のLANカード(ここでは実際のLANカードと、SoftEtherの仮想のLANカード)を選び、マウスの右クリックで「ブリッジ」メニューを選べば、このWindows XPを2つのネットワークの橋渡しにすることができる。

(つづく)

筆者宅の仮想ハブでは、実際のLANカードとSoftEtherの仮想LANカードをWindows XPの「ネットワークブリッジ」設定でブリッジしている。これで、この仮想LAN上の仮想HUBに接続したマシンにも、ルータの発行するIPアドレスが割り振られる

(2004/02/04)
関連情報

URL
  SoftEther.com(SoftEtherオフィシャルページ)
http://www.softether.com/jp/

関連記事
VPN構築ソフト「SoftEther」、SSLを採用した新バージョンを配布開始(2004/01/13)
仮想ネットワーク構築・通信ソフトウェア「SoftEther」が無償公開(2003/12/15)


大和 哲
1968年生まれ東京都出身。88年8月、Oh!X(日本ソフトバンク)にて「我ら電脳遊戯民」を執筆。以来、パソコン誌にて初歩のプログラミング、HTML、CGI、インターネットプロトコルなどの解説記事、インターネット関連のQ&A、ゲーム分析記事などを書く。兼業テクニカルライター。ホームページはこちら
(イラスト : 高橋哲史)

- ページの先頭へ-

Internet Watch ホームページ
Copyright (c) 2004 Impress Corporation All rights reserved.