GNS3とVMWarePlayerを使用してwebサーバー等を作成する方法

GNS3とVMWarePlayerを使用してwebサーバー等を作成する方法

仮想ネットワーク(GNS)と仮想OS(VMWarePlayer)を使用してwebサーバー等を作成する方法

仮想ネットワーク(GNS)と仮想OS(VMWarePlayer)を使用してwebサーバー等を作成する方法です。

 

使用機器は以下です。
・PC 1台
・Buffaloルータ BHR-4RV
・docomo携帯電話

 

以下の構成を作成します。

 

TWSNMPマネージャーでの図

 

 

 

設定は以下です。

 

BHR-4RV

 

以前のページのDDNS設定を引き継ぎます。

 

・192.168.0.1から172.16.0.1へ変更。

 

・ポートフォワード設定。WAN側IP:80をCisco7200の172.16.0.3:80へ。
(同一LAN内以外へは設定不可なのでBIG-IPのVirtualServerの10.0.0.100:80へのポートフォワードは無理。)

 

 

 

PC

以前のBIG-IPのページの設定を引き継ぎます。

 

・IISにてwebサイト3個有り

 

・「ローカルエリア接続」のIPアドレスを消去し、無効に。

 

・「ローカルエリア接続3」を有効にし、IPアドレス 172.16.0.2
+ デフォルトゲートウェイ 172.16.0.1へ設定。

 

・Microsoft Loopback Adapterのインストールと設定

 

※192.168.0.0/24でVMWare上でブリッジ接続設定を行っているもの
(BIG-IP VEのinternal側と、apacheを起動しているCentOS)や、
自PCでIISを起動しているため、Microsoft Loopback Adapterを使用します。

 

 

WindowsXPでのMicrosoft Loopback Adapterのインストール方法

コントロールパネルの「プリンタとその他のハードウェア」 - 左側ウィンドウの
「関連項目」下の「ハードウェアの追加」 - 「次へ」
- 「はい、ハードウェアを接続しています」 - 「次へ」
- 「新しいハードウェア デバイスの追加」から。

 

Windows7でのMicrosoft Loopback Adapterのインストール方法は
デバイスマネージャの「操作」 - 「レガシーハードウェアの追加」から。

 

 

Microsoft Loopback Adapterのインストールが完了した後、

 

IPアドレスを割り当てます。

 

192.168.0.2

 

192.168.0.101 (IIS101用)

 

192.168.0.102 (IIS102用)

 

192.168.0.103 (IIS103用)

 

その後IISの再起動を行ないます。
BIG-IP VEのARPテーブルが自動で更新されてからは疎通可能になります。

 

※最悪、Microsoft Loopback Adapterをインストールせずに上記の
4つのアドレスをローカルエリア接続3 (IPアドレス 172.16.0.2を与えてる
もの)に追加しても通信自体は可能です。
通常は実施しません。且つ172.16.0.0/16と192.168.0.0/24のトラフィックが
混ざってしまいます。

 

 

GNS3 (Cisco7200)

以前のページの設定を引き継ぎます。

 

・現実のネットワークへ接続する。方法は上記リンクを参照下さい。
fa0/0をローカルエリア接続3へ、fa0/1をVMware Network Adapter
VMnet1(BIG-IPのexternal)へ。

 

・インターフェースとデフォルトゲートウェイの設定。インターフェース
fa0/0 fa0/1は各々の現実のネットワークと同一LANへ。
R1(config)#ip route 0.0.0.0 0.0.0.0 172.16.0.1

 

・スタティックPAT設定(BHR-4RVからポートフォワードされてきたものを
再度BIG-IPのVirtualServerの10.0.0.100:80へ転送)

 

Static Port Address Translationとも言われています。
PATはオーバーロードとも言われています。
R1(config)#ip nat inside source static tcp 10.0.0.100 80 172.16.0.3 80 extendable
R1(config)#int fa0/1
R1(config-if)#ip nat inside
R1(config-if)#int fa0/0
R1(config-if)#ip nat outside
参照サイト
http://www.cisco.com/JP/support/public/ht/tac/102/1022277/827spat-j.shtml

 

 

※以前のBIG-IPの設定で、externalをホストオンリーでは無くブリッジに、
internalをブリッジでは無くホストオンリーに設定していればCisco7200は必要無し。
※以下の構成になりました。

 

 

GNSを起動しているPCとGNS3上のCisco7200間のping疎通ができない時

 

Cisco7200からローカルエリア接続3のping送信時のパケットで、
header checksumにエラーが出る時はデバイスマネージャから
GNSのnetファイルで関連付けたNICの詳細設定を開き
「IPv4チェックサムオフロード」の値を
「受信と伝送有効」から「無効」へ変更し再起動すると改善されます。

 

httpアクセスした際WEBサーバーからレスポンスが遅い時は、
デバイスマネージャから(GNSのnetファイルで関連付けた)NICの
詳細設定を開き「TCPチェックサムオフロード(IPv4)」の値を
「受信と伝送有効」から「無効」へ変更し再起動すると改善されます。
※再起動を行わないと設定が反映されません。

 

※今回の事象には関係無いですが、ついでに「UDPチェックサム
オフロード(IPv4)」も「受信と伝送有効」から「無効」へ変更しておきました。

 

 

BIG-IP VE(VMWare)

以前のBIG-IPのページの設定を引き継ぎます。

 

・パケットの帰りは、スタティックPAT後のCisco7200のアドレス宛やし
デフォルトゲートウェイは必要ないね。

 

・もう1つpoolを作成する。pool memberはVMWare(ゲストOS:CentOS5.2) のみ。

 

・HTTP_REQUESTの中を見るiRuleを作成するため、前もってVirtual Serverの
HTTP Profile項へHTTPのデフォルトプロファイル、「http」を入れておく。

 

・iRuleで、user_agent(機種)にdocomo(tolower関数使用のため大文字、
小文字は問わない)との文字列が有る場合のみ、もう1つのpoolへ振り分ける。
未確認ですが、他携帯ブラウザのユーザーエージェントも指定する場合は、
or を使用し"up.browser"、"j-phone"、"vodafone"、"softbank"などを
記載すれば良いかと思います。

 

※今回は設定しませんが、set ::use_nullgwdocomo 1にすると識別情報レベル
での判別が可能とのことです。

 

when HTTP_REQUEST {
if { [string tolower [HTTP::header User-Agent]] contains"docomo" } {
pool mobile_pool
}
else {
pool http_pool
}
}

 

 

 

 

CentOS(VMWare)

・ネットワーク設定を「ブリッジ」に。

 

・eth0にIP割り当て。192.168.0.104。

 

・apache起動のため「httpd on」と、index.htmlの作成。

 

・iptablesの編集。

 

以上です。