雑記

インフラのことだったりプログラムのことだったりどうでもいいこと書いたり。要は雑記。

vyattaを使ってみた

vyattaって?

  • ソフトウェアルーターです。DebianベースのLinuxです。
  • ちょっとルーターを作らなきゃいけなくなり、Centとかでも作ってもよかったんだけどどうせならということで使ってみました。
  • 環境はVMwareでの仮想環境です。

ダウンロード

インストール

  • isoをマウントして起動
  • ログインプロンプトが表示
    • vyatta / vyatta でログイン可能
  • ログイン後、インストール作業を開始。以下のコマンドを実行
$ install system
    • インストール方法として「system」と「image」があるとのこと。今回はsystemを選択。
      • なお、systemはハードディスクにファイル理ステムを作成して必要なファイルをインストールする方法(要はよくあるLinuxのインストールと同じ方法)
  • インストールウィザードが表示されるが、基本的にはenterでOK。
    • 途中でディスクの初期化が求められるところだけyesとする必要がアリ
Install the image on? [sda]: yes
  • インストール完了後、念のためリブート

設定前にvyattaの動作モードについて

  • vyattaには以下の2つの動作モードがあり
    • 運用モード
    • 設定モード
  • 通常は運用モード。各種設定をするときは設定モードに切り替える。
  • 切替えは以下のコマンドを実行
vyatta@vyatta:~$ configure 
[edit]
vyatta@vyatta#
  • 運用モードに戻るには以下のコマンドを実行
vyatta@vyatta# exit
exit
vyatta@vyatta:~$ 
  • 運用モードと設定モードの区別はシェルの「$」と「#」で判断
    • 「$」 = 運用モード
    • 「#」 = 設定モード

設定

  • 設定は設定モードに変更してから実施する。
  • 設定を適用するには以下のコマンドを実行。
commit
  • 設定を保存するには以下のコマンドを実行。
save

ネットワークの設定

# set interfaces ethernet eth0 address 172.16.11.2/24
# set interfaces ethernet eth1 address 192.168.11.10/24
  • ゲートウェイ
# set system gateway-address 172.16.11.254
# set system name-server 172.16.11.254
  • 確認
--インターフェースの確認
# show interface
ethernet eth0 {
address 172.16.11.2/24
hw-id 00:0c:29:5f:4a:d5
}
ethernet eth1 {
address 192.168.11.10/24
hw-id 00:0c:29:5f:4a:df
}
loopback lo {
}
    • ゲートウェイの確認
# show system gateway
gateway-address 172.16.11.254
# show system name 
name-server 172.16.11.254

sshの起動

# set service ssh
  • 起動の確認
# show service

source nat

  • 設定
# set nat source rule 10
# set nat source rule 10 outbound-interface eth0
# set nat source rule 10 translation address 172.16.11.2
# set nat source rule 10 source address 192.168.2.0/24
  • 確認
# show nat source
rule 10 {
outbound-interface eth0
source {
address 192.168.2.0/24
}
translation {
address 172.16.11.2
}
}

desination nat

試しにsshをnatしてみる。

  • 設定
# set nat destination rule 10 inbound-interface eth0
# set nat destination rule 10 protocol tcp
# set nat destination rule 10 destination address 172.16.11.10
# set nat destination rule 10 destination port 22
# set nat destination rule 10 translation address 192.168.11.10
# set nat destination rule 10 translation port 22
  • 確認
# show nat destination rule 10
destination {
address 172.16.11.10
port 22
}
inbound-interface eth0
protocol tcp
translation {
address 192.168.11.10
port 22
}

その他

GUIについて

PATH

  • vyattaはDebianベースなのでLinuxのコマンドが各種使えます。ただ、PATHが通ってないとこもあるので(/sbin など)PATHを設定するかフルパスで実行する必要があり。

感想

  • 別にvyattaを使わなくてもLinux系であればiptablesとか使えばやりたいことは全然実現できるんだけど、設定はとっても楽です。動作が軽いのも好印象。多分今後も使う。