専用ルータと同等の機能を備えるLinuxベースのソフトウェアルーター「Vyatta」を使う 4ページ

Vyattaの起動と停止

 仮想マシン上にインストールしたVyatta環境の起動と停止、再起動についても説明しておこう。仮想マシンを起動させるには、virsh startコマンドを使用する。

virsh start <仮想マシン名>

 たとえば「Vyatta01」という名前で作成した仮想マシンを起動するには、以下のようにする。

# virsh start Vyatta01

 起動した仮想マシンのコンソールにアクセスするには、まずvirsh listコマンドで仮想マシンのIDを調べる。

# virsh list
 Id    Name                           State
----------------------------------------------------
 4     Vyatta01                       running

 この場合、Vyatta01という仮想マシンには4というIDが割り当てられている。続いてこのIDを指定してvirsh consoleコマンドを実行することで、仮想マシンのコンソールにアクセスできる。

# virsh console 4
Connected to domain Vyatta01
Escape character is ^]

Welcome to Vyatta - vyatta ttyS0

vyatta login: 

 なお、コンソールから抜けるにはCtrl+]を入力すれば良い。

 Vyattaでは、Linuxのshutdownコマンドやrebootコマンドを使ってシャットダウンや再起動を行えるほか、独自の「poweroff」や「reboot」といったコマンドでこれらの操作を行える。たとえば再起動を行うには、以下のようにrebootコマンドを実行すれば良い。

$ reboot

NICの追加

 virt-installコマンドで作成された仮想マシンでは、デフォルトでは1つの仮想NICが搭載されている。しかし、仮想マシンをルーターとして利用するには複数のNICが必要だ。そこで、仮想マシンの設定ファイルを編集してNICを追加する作業を行っておく。仮想マシンのハードウェア構成や設定を変更するには、仮想マシンを停止させた状態でvirsh editコマンドを実行する。virsh editコマンドの引数には、設定を変更したい仮想マシンの名前を指定する。

# virsh edit <仮想マシン名>

 たとえばVyatta01という仮想マシンの設定を変更するには、以下のようにする。

# virsh edit Vyatta01

 virsh editコマンドを実行するとテキストエディタ(デフォルトではvi)が起動し、そこで設定ファイルの編集を行っていく。この設定ファイルにはXML形式で仮想マシンの名前やメモリ容量、仮想CPU数といったハードウェア構成や仮想ディスクの設定、仮想NICの設定などが記述されている。仮想NICの設定は、以下の「interface」要素として記述されている。

<interface type='bridge'>
  <mac address='52:54:00:d8:dd:e9'/>
  <source bridge='br0'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

 仮想NICを追加するには、このinterface要素の次に以下のような新たにinterface要素を追加すれば良い。

<interface type='bridge'>
  <mac address='52:54:00:d8:dd:f0'/>
  <source bridge='br1'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</interface>

 なお、太字の個所は環境に応じて適切なものに変更しておく必要がある。mac要素のaddress属性には仮想NICに割り当てるMACアドレスを、address要素のslot属性には仮想PCIスロットIDを指定する。設定ファイル内ではほかにもaddress要素を使って接続する仮想PCIスロットを指定しているものがあるので、重複しないよう値を設定しておく。また、3つ以上の仮想NICを利用したい場合は同様にして必要な数だけinterface要素を追加すれば良い。

 設定ファイルの修正・保存を行ってエディタを終了すると、自動的に変更した設定が保存される。続いて仮想マシンを起動し、正しく追加した仮想NICが認識されているかどうかを確認しておこう。Vyatta上で接続されているNICを確認するには、以下のようにshow interfacesコマンドを実行すれば良い。

$ show interfaces
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
eth0             -                                 u/u
eth1             -                                 u/u
lo               127.0.0.1/8                       u/u
                 ::1/128

 ここでは「Interface」欄にeth0およびeth1の2つが表示されており、2つの仮想NICが認識されていることが分かる。