2010年8月7日土曜日

ソフトウェア ルータ Vyatta を試してみる。

サーバの構築は、仮想環境でということが多くなってきました。
構築作業中は、ネットワーク機器も仮想マシン上で動かすことができれば便利でしょう。
Linux をルータにしてしまえばいいのですが、ソフトウェア ルータ Vyatta (ヴィヤッタ) なるものがあるようです。
試してみました。
概要は、Online Demos (http://www.vyatta.com/products/online_demos.php) の An Introduction to Vyatta を参考にしてください。


ダウンロード

ダウンロードは、こちら (http://www.vyatta.org/downloads) から行えます。
Vyatta Core (VC) は、オープン ソースのバージョンで、サポートが付きませんが、自由にダウンロードできます。

仮想マシンのイメージ (バーチャル アプライアンス) としては、VMware ESX 3 and ESX 4 と Citrix XenServer が用意されています。
また、LiveCD ISO イメージから起動して利用することもできます。
もちろん、仮想マシンや実際のハードウェアにインストールして使用することもできます。


インストール

Online Demos (http://www.vyatta.com/products/online_demos.php) の Vyatta Software Installation を参考にしてください。

* システム要件
ハードウェア: x86
メモリ: 512MB (環境によっては、システム要件より少なくても動作します。私は、 128MB でインストールしました。)
ディスク: 1GB (2GB 以上推奨)
インタフェース: 必要なだけ用意する。

※ Vyatta Core 6.0 は、Linux Kernel 2.6.x でした。/etc/debian_version によると、Debian 5 をベースにしているようです。

私は、KVM で仮想マシンを作成しました。
  1. 仮想マシンマネージャを起動して、仮想マシンを新規作成します。
    ISO イメージ: vyatta-livecd-virt_VC6.0-2010.06.01_i386.iso (VC6.0 - Virtualization ISO)
    OS の種類: Linux
    バージョン: Generic 2.6.25 or later kernel with virtio
    メモリ: 512MB
    CPU: 1
    ディスク: 2GB
    詳細オプション > アーキテクチャ: i686

  2. 仮想マシンが LiveCD から起動したら、ログインします。(Username: vyatta, Password: vyatta)

  3. ハードディスクに Vyatta をインストールします。
    $ install-image

  4. インストーラの質問に答えます。
    Would you like to continue?: (既定値)
    Partition: (既定値)
    Install the image on?: (既定値)
    Continue?: Yes
    How big of a root partition should I create?: (既定値)
    Which one should I copy to sda?: (既定値)
    Enter vyatta password: (vyatta アカウントのパスワードを設定)
    Which drive should GRUB modify the boot partition on?: (既定値)

  5. 仮想マシンを停止します。
    $ sudo shutdown -h now

  6. 仮想マシンマネージャで必要なだけ仮想インタフェースを追加します。また、起動デバイスがハードディスクになっていることを確認します。必要のないデバイス (Sound など) は、削除してもよいでしょう。

  7. 仮想マシンを起動し、vyatta でログインします。

  8. Boot via の行が、image になっていることを確認します。
    $ show version

  9. interfaces の設定に作成した仮想インタフェースが存在することを確認します。
    $ show configuration

  10. インタフェースの番号が、eth0 から始まっていない場合、「設定の初期化」を実施して再起動すれば eth0 から認識します。

Vyatta CLI の操作方法

Vyatta CLI には、シスコルータに似ていますので、シスコルータを触ったことがある人ならば、すぐに操作を覚えることができると思います。

操作モードと設定モードがあります。
操作モードは、show コマンドや ping コマンド、debug コマンドなどを実行できます。
設定モードは、設定を変更できるモードです。
どちらのモードでも、Linux コマンド (less, ls, /sbin/ifconfig, sudo など) を実行することができます。

Vyatta にログインした直後は、操作モードです。
プロンプトは、vyatta@HOSTNAME$ です。
操作モードから、設定モードに移るには、configure を実行します。
プロンプトが、vyatta@HOSTNAME# になります。
設定モードから、操作モードに戻るには、exit を実行します。
操作モードで、exit を実行すると Vyatta からログアウトします。

CLI では、ヘルプが使えます。
[Tab] キーで、途中まで入力したコマンドの補完を行います。
補完候補が複数ある場合は、候補を表示し、もう一度 [Tab] キーを押すと、簡単な説明が表示されます。
[?] キーは、補完機能はありませんが、候補の表示と簡単な説明の表示機能は同じです。

シスコルータでは、コマンドの短縮形 (show コマンドの sh など) でも大丈夫ですが、Vyatta では、短縮形は受け付けられません。[Tab] キーの補完を使って効率よく入力しましょう。


初期設定

Online Demos (http://www.vyatta.com/products/online_demos.php) の Getting Started With Vyatta を参考にしてください。

  1. CLI に vyatta でログインします。

  2. インタフェースに IPv4 アドレスを設定します。
    $ configure # 設定モードに入ります。
    # set interfaces ethernet eth0 address 192.168.1.30/24 # アドレスを設定する。
    # set interfaces ethernet eth1 address 172.16.211.254/24 # アドレスを設定する。
    # show interfaces # 設定を確認します。+ で始まる行が変更した行、- で始まる行が削除した行

  3. サービスを有効にします。
    # set service ssh # ssh を有効にする。
    # set service https # https # Web GUI 管理インタフェースを有効にする。
    # show service # 設定を確認します。+ で始まる行が変更した行、- で始まる行が削除した行

  4. システム設定をします。
    # set system host-name Vyatta11 # ホスト名を設定します。
    # set system domain-name example.com # ドメイン名を設定します。
    # set system name-server 8.8.8.8 # DNS サーバを設定します。
    # set system name-server 8.8.4.4 # DNS サーバを設定します。
    # set system time-zone Asia/Tokyo # タイムゾーンを東京に設定します。
    # delete system ntp-server # 既存の NTP サーバの設定を削除します。
    # set system ntp-server ntp.jst.mfeed.ad.jp # NTP サーバを設定します。
    # set system gateway-address 192.168.1.1 # デフォルト ゲートウェイを設定します。
    # show system # 設定を確認します。+ で始まる行が変更した行、- で始まる行が削除した行

  5. 最後に設定を反映して、ファイルに保存します。
    # show # 設定を確認します。+ で始まる行が変更した行、- で始まる行が削除した行
    # commit # 設定を反映する。
    # save # 設定を /opt/vyatta/etc/config/config.boot に保存する。
    # exit # 設定モードを抜けます。

Web GUI 管理インタフェースによる設定

  1. 事前に CLI でインタフェースに IP アドレスを振って service https を有効にしておきます。
  2. Web GUI 管理インタフェースに vyatta ログインします。ブラウザで、https://<設定した IP アドレス>/ にアクセスします。
  3. 左側のツリーを展開して、設定項目を探します。太字になっている項目がデフォルトから変更されている設定です。
  4. 項目に設定を入力し終えたら、[Set] をクリックします。
  5. 設定反映前の項目には、値の右にオレンジの丸が表示されます。[Commit] をクリックして設定を反映します。
  6. [Operation] タブを選択すると、左側のツリーが操作の一覧に代わります。左側のツリーから、ping を選択して、接続性を試験してみましょう。

設定の初期化

$ configure
# load /opt/vyatta/etc/config.boot.default # デフォルトの設定を読み込みます。
# set system login user vyatta authentication plaintext-password PASSWORD # パスワードの再設定
# show # 設定を確認します。
# commit
# save
# exit
$ reboot # 再起動します。


NAT (IP マスカレード) の設定

# set service nat rule 10 type masquerade
# set service nat rule 10 source address 192.168.10.0/24
# set service nat rule 10 outbound-interface eth0
# show service nat
# commit
# save


GRE Tunnel

# set interfaces tunnel tun0 address 192.168.11.1/24
# set interfaces tunnel tun0 local-ip 192.168.200.1
# set interfaces tunnel tun0 remote-ip 192.168.200.2
# set interfaces tunnel tun0 encapsulation gre
# show interfaces tunnel
# commit
# save

Static Routing
# set protocols static route 192.168.0.0/16 next-hop 192.168.200.101
# show protocols static
# commit
# save


Vyatta CLI
  • ログアウトする。
    exit
  • バージョンの確認
    $ show version
  • 再起動
    $ reboot
  • システム停止
    $ sudo shutdown -h now
  • root アカウントのシェル
    $ sudo -i
  • 設定の確認
    $ show configuration
  • 設定モードに入る
    $ configure
  • インタフェースの確認
    $ show interfaces
  • ルーティングを確認
    $ show ip route

0 件のコメント: