Serverを使って動作環境を構築してみました。OpenFlowというのは、簡単にいうと、たくさんのスイッチングハブを一つのコントローラアプリケーション(ソフトウェア)で制御するための仕様です。普通のユーザにはあまり関係のないものだと思いますが、ネットワークの研究をする方には、いろんなネットワークを構築しやすくなるので、便利なしくみだと思います。私もかじり始めたばかりで、あまり偉そうに説明できないので詳しくはOpenFlowのサイトを見たり、検索してみてください。今回は以下のサイトに記載されている手順で環境を作りましたが、OpenFlowが動作するUbuntuは現時点で最新の11.04を使用しました。0x01と定義されているので、おそらくバージョンは1.0.0です。目標とするネットワーク異なるネットワークに接続する3つのHostを一つのSwitchを経由して通信できるようにします。普通のスイッチングハブならハードウェアでやってしまうので意識することはありませんが、ここではソフトウェアのSwitchをソフトウェアのControllerで制御して、スイッチングハブと同様の動作をさせます。Host、Switch、Controllerはそれぞれ別のVMで起動し、ControllerとSwitchの間と、HostとSwitchの間は仮想ネットワークで接続します。ControllerとSwitchのソフトウェアにはOpenFlow付属のものを使用します。Serverは事前にセットアップしておいてください。(いや、これが結構苦労したんですけど。Accessインタフェースを使用して行います。Serverで、外部からパッケージ等をダウンロードするためのブリッジ接続(またはNAT接続)の他に、仮想ネットワークを最低4つ用意する必要があります。Serverが動作するホストでvmware-config.plを使って、仮想ネットワークとして”host-only接続”か”NAT接続”をあわせて4つ作ってください。作り方は以下のサイトが参考になると思います。http://tipspc.blogspot.com/2009/07/vmware-server-x-linux.html※仮想ネットワークのアドレスは使用しないので、とりあえず適当に設定してください。今回作るVMのみで使えるネットワークがすでに必要な数ある場合は、新しく作る必要はありません。Desktopのisoイメージはダウンロードしておいてください。※長くなりますが、お付き合い下さい。Machine]を実行Nameはとりあえず”OpenFlow01′′とします。desktopを入れます。このVMはControllerとして使用しますので、メモリーは上記のサイトに記載されている通り、”1024′′MB(1GB)にしてください。その他のポイントは以下のとおり。ハードディスクは8GBもあれば十分です。今後同じサイズのVMを他に4つ作りますので、ホストマシンには5*8=40GBの空き容量が必要です。ネットワークアダプターは、外部と接続できるブリッジ接続を選んでください。Driveには、事前準備3で用意したisoイメージを指定してください。Machines/”等のVMイメージを置くディレクトリにisoファイルを置かないと参照できないので、注意。設定が終わったら、VMを起動し、Ubuntuのインストールをおこなって下さい。OpenFlowをインストールUbuntuのインストールが終わったら、以下のサイトを参考にして、作成したVMにOpenFlowをインストールします。Installhttp://www.openflow.org/wk/index.php/Ubuntu_Installこのサイトに記載されている手順(ほぼそのまま)を以下で詳しく書きます。OpenFlowをインストールするVMで、ブリッジ接続を使っても外部と通信できない環境の場合、プロキシ等を使用して外部と通信できるようにしてください。Proxyでプロキシの設定が可能です。libtoolターミナルから上記コマンドを実行してください。(以下”$”や”#”で始まる行はターミナルへの入力です。”$”がユーザアカウント、”#”がルートアカウントで入力する行です。)corkscrewの設定(プロキシを使う場合)次にgitでOpenFlowを取得しますが、もしgitをプロキシ経由で使う場合、以下のサイト等を参考にcorkscrewを設定しておいてください。./boot.shなお、結果として以下のように表示されると思いますが、問題ありません。install”してください。`search.cpan.org`などとエラーメッセージが出力されているかもしれません。Perlから呼び出すwgetにプロキシを指定するために以下を実行してください。<<__EOF__http_proxy=$HTTP_PROXY__EOF__これで~/.wgetrcにプロキシを設定できますので、install_deps.plを再度実行してください。※$HTTP_PROXYのところは、環境変数HTTP_PROXYの定義がない場合は適切なプロキシ設定に置き換えてください。env_varsenv_varsにある、OF_ROOTのディレクトリを自分の環境にあったものに修正してください。現在セットアップしている環境ではrootでwiresharkを起動できません。いって、一般ユーザですとネットワークインタフェースを参照できません。一般ユーザで起動して、ネットワークインタフェースを見られるようにします。/usr/bin/dumpcapを実行した後、ユーザ権限でwiresharkを起動(デスクトップのメニューから起動)。Interfacesを開き、"lo"(ループバック)をStartしてください。of_user_veth_test.plを実行し、wireshark上にopenflowのパケットが表示されればOpenFlowのインストール成功です。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。