仮想ネットワーク(GNS)と仮想OS(VMWarePlayer)を使用してwebサーバー等を作成する方法です。
使用機器は以下です。
・PC 1台
・Buffaloルータ BHR-4RV
・docomo携帯電話
以下の構成を作成します。
TWSNMPマネージャーでの図
設定は以下です。
・以前のページの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へのポートフォワードは無理。)
・以前の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のトラフィックが
混ざってしまいます。
・以前のページの設定を引き継ぎます。
・現実のネットワークへ接続する。方法は上記リンクを参照下さい。
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は必要無し。
※以下の構成になりました。
Cisco7200からローカルエリア接続3のping送信時のパケットで、
header checksumにエラーが出る時はデバイスマネージャから
GNSのnetファイルで関連付けたNICの詳細設定を開き
「IPv4チェックサムオフロード」の値を
「受信と伝送有効」から「無効」へ変更し再起動すると改善されます。
httpアクセスした際WEBサーバーからレスポンスが遅い時は、
デバイスマネージャから(GNSのnetファイルで関連付けた)NICの
詳細設定を開き「TCPチェックサムオフロード(IPv4)」の値を
「受信と伝送有効」から「無効」へ変更し再起動すると改善されます。
※再起動を行わないと設定が反映されません。
※今回の事象には関係無いですが、ついでに「UDPチェックサム
オフロード(IPv4)」も「受信と伝送有効」から「無効」へ変更しておきました。
・以前の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
}
}
・ネットワーク設定を「ブリッジ」に。
・eth0にIP割り当て。192.168.0.104。
・apache起動のため「httpd on」と、index.htmlの作成。
・iptablesの編集。
以上です。