前書き
Vyatta (VyOS) を使って簡単な動作確認をしたいと思います。
インストール手順や、動作確認に際しては下記サイトの内容を参考にさせていただきました。
VyOS 1.4.x sagitta の公式ドキュメント (Users Guide) は下記で参照可能です。
環境
自宅の ESXi 7.0 環境を利用します。
インストール
vyos.io から ISO イメージをダウンロードし、仮想マシンにマウントします。
仮想マシンは、下記サイジングで構成。
構成 | サイズ |
---|---|
CPU | 1 vcpu |
Memory | 1GB |
HDD | 4GB |
仮想マシンに設定するゲストOSの種類は、「Debian 64bit」を選択しておけば大丈夫です。
私は、選択可能な中で最新の「Debian GNU/Linux 11 (64bit)」を選択しました。
https://vyos.io/solutions/vyos-on-vmware
VyOS is a Debian GNU/Linux-based network OS ~
ISO イメージから起動すると、vyos が起動します。
アカウント/初期パスワードは、vyos / vyos でログイン可能です。
ISO イメージをディスクにインストールするには install image コマンドを実行して、対話形式でインストール作業を進めます。
VYOS@vyos:~$ install image ▼
インストールが終わったら、 poweroff コマンドでシャットダウンできます。
VYOS@vyos:~$ poweroff ▼
設定の確認
現在の設定状況を一覧で確認するには、show configuration コマンドで確認できます。
初期設定では、下記のように設定されています。
vyos@vyos:~$ show configuration ▼
interfaces {
ethernet eth0 {
hw-id 00:50:56:8d:fe:9c
}
ethernet eth1 {
hw-id 00:50:56:8d:a7:86
}
ethernet eth2 {
hw-id 00:50:56:8d:0e:77
}
ethernet eth3 {
hw-id 00:50:56:8d:fa:5d
}
loopback lo {
}
}
system {
config-management {
commit-revisions 100
}
conntrack {
modules {
ftp
h323
nfs
pptp
sip
sqlnet
tftp
}
}
console {
device ttyS0 {
speed 115200
}
}
host-name vyos
login {
user vyos {
authentication {
encrypted-password ****************
plaintext-password ****************
}
}
}
ntp {
server time1.vyos.net {
}
server time2.vyos.net {
}
server time3.vyos.net {
}
}
syslog {
global {
facility all {
level info
}
facility protocols {
level debug
}
}
}
}
vyos@vyos:~$
show configuration commands を実行すると、set文の形式で設定の一覧を表示します。
vyos@vyos:~$ show configuration commands
set interfaces ethernet eth0 hw-id '00:50:56:8d:fe:9c'
set interfaces ethernet eth1 hw-id '00:50:56:8d:a7:86'
set interfaces ethernet eth2 hw-id '00:50:56:8d:0e:77'
set interfaces ethernet eth3 hw-id '00:50:56:8d:fa:5d'
set interfaces loopback lo
set system config-management commit-revisions '100'
set system conntrack modules ftp
set system conntrack modules h323
set system conntrack modules nfs
set system conntrack modules pptp
set system conntrack modules sip
set system conntrack modules sqlnet
set system conntrack modules tftp
set system console device ttyS0 speed '115200'
set system host-name 'vyos'
set system login user vyos authentication encrypted-password '$6$bKeetMhEI.EFpc1A$FK2uXSnbslJ7CjedIQJad1Yskq1uve2FzZdh/OFj99RKTO3ZsPConnj2mFOu7macCAEeIB98vyFRwP.mVBMYw.'
set system login user vyos authentication plaintext-password ''
set system ntp server time1.vyos.net
set system ntp server time2.vyos.net
set system ntp server time3.vyos.net
set system syslog global facility all level 'info'
set system syslog global facility protocols level 'debug'
vyos@vyos:~$
初期設定
Configuration mode への移行
設定変更するには、configuration mode へ移行します。
vyos@vyos:~$ configure ▼
[edit]
vyos@vyos#
exit で通常のモードに戻れます。
vyos@vyos# exit ▼
exit
vyos@vyos:~$
使用可能なコマンドの一覧表示
タブキーで補完が可能ですので、コマンドプロンプトでタブキーを押下するとコマンド一覧が表示されます。
vyos@vyos:~$ [タブキーを押下]
Possible completions:
add Add an object to a service
clear Clear system information
clone Clone an object
configure Enter configuration mode
connect Establish connection
copy Copy an object
delete Delete an object
disconnect Take down a connection
force Force an operation
format Format a device
generate Generate an object
import Import an object
install Install a new system
monitor Monitor system information
ping Send Internet Control Message Protocol (ICMP) echo request
poweroff Poweroff the system
reboot Reboot the system
release Release specified variable
rename Rename an object
renew Renew specified variable
reset Reset a service
restart Restart individual service
set Set operational options
show Show system information
telnet Telnet to a node
traceroute Trace network path to node
update Update data for a service
wake-on-lan Send Wake-On-LAN (WOL) Magic Packet
vyos@vyos:~$
IPアドレスの設定
IPアドレスは、set interfaces ethernet コマンドで設定できます。
vyos@vyos# set interfaces ethernet eth0 address '192.168.1.104/24' ▼
逆に設定を削除するときは、delete interfaces ethernet コマンドで設定を削除できます。
vyos@vyos# delete interfaces ethernet eth0 address '192.168.1.104/24' ▼
SSH の有効化 (オプション)
SSH を有効にするには、下記を実行します
vyos@vyos# set service ssh ▼
[edit]
vyos@vyos#
デフォルトゲートウェイの設定 (オプション)
例えば、192.168.1.254 を Next hop としてデフォルトゲートウェイを設定する場合は、下記のように設定します。
vyos@vyos# set protocols static route 0.0.0.0/0 next-hop 192.168.1.254 ▼
ホスト名の変更 (オプション)
ホスト名は、set system host-name コマンドで変更できます。
vyos@vyos# set system host-name hostname.subdomain.com ▼
ユーザの追加作成 (オプション)
デフォルトのvyosユーザ以外でユーザ作成するには、set system login user コマンドで追加します。
下記はユーザ名を「hoge」、パスワードを「P@ssw0rd」で作成した例です。
vyos@vyos# set system login user hoge authentication plaintext-password P@ssw0rd ▼
設定の反映
compare コマンドで、未反映の設定をdiff形式で確認できます。
vyos@vyos# compare ▼
:
最後に commit コマンドで設定を反映させ、save コマンドでディスクに設定を保存します。
vyos@vyos# commit ▼
[edit]
vyos@vyos#
vyos@vyos# save ▼
Saving configuration to '/config/config.boot'...
Done
[edit]
vyos@vyos#
ちなみに、設定を反映させずに破棄する場合は、commit ではなく discard コマンドを実行します。
vyos@vyos# discard ▼
Changes have been discarded
[edit]
vyos@vyos#
L2ブリッジ設定
構成イメージ
下記のようなネットワーク構成で vm1 と vm2 のネットワークを繋ぐ L2ブリッジ を構成します。
+---------+ +-------------+ +---------+
| vm1 | | VyOS | | vm2 |
| | | eth1 eth2 | | |
+----+----+ +--+------+---+ +----+----+
|.31 | | |.32
| | | | 192.168.1.0/24
----+----------------+- -+----------------+----------------------
vSwitch1 vSwitch2
ネットワークのループに注意
上記例では、eth1 と eth2 を別々の仮想スイッチ(vSwitch1/vSwitch2) に接続しています。
eth1 と eth2 で Bridge を構成し、且つ、eth1 と eth2 を同じ仮想スイッチに接続してしまった場合はループの構成となり、大量のトラフィックが流れるためネットワークがダウンします。
ループ構成とならないよう、くれぐれもご注意ください。
留意事項
仮想スイッチでは、無差別モード (promiscuous mode) を有効にしておいてください。
1. Bridge の作成
Bridge は set interfaces bridge コマンドで作成します。
Bridge名は、brXXX という命名規則で作成する必要があります。
vyos@vyos# set interfaces bridge [タブキー押下]
Possible completions:
> brN ★ Bridge interface name
>
[edit]
vyos@vyos#
ここでは、br00 という名称とします。
vyos@vyos# set interfaces bridge br00
次に、作成したBridge br00 にインタフェースをメンバーとして登録します。
vyos@vyos# set interfaces bridge br00 member interface eth1
vyos@vyos# set interfaces bridge br00 member interface eth2
show configuration コマンドでは、該当設定部分は下記のように見えます。
interfaces {
bridge br00 {
member {
interface eth1 {
}
interface eth2 {
}
}
}
ethernet eth0 {
address 192.168.1.10/24 ※これはSSH接続用に設定しているので任意で。
hw-id 00:50:56:8d:fe:9c
}
ethernet eth1 {
hw-id 00:50:56:8d:a7:86
}
ethernet eth2 {
hw-id 00:50:56:8d:0e:77
}
ethernet eth3 {
hw-id 00:50:56:8d:fa:5d
}
loopback lo {
}
}
仮想スイッチは、下記のように構成しています。
VyOS は、eth1 を Closed_pg-1 に、eth2 を Closed_pg-2 に接続しています。
2. 動作確認
留意事項
Windows 端末同士で Ping 疎通確認を行う場合は、ファイアウォール設定で 受信の規則 にて「ファイルとプリンターの共有 (エコー要求 - ICMPv4受信)」を有効化しておいてください。
ping にて正常に Bridge 経由で疎通確認できました。
これで vSphere HA や vSAN などのスプリットブレインの動作検証などが出来ますね!