VMware Playerでネットワークを学ぶ～②VyOS1.4を使ったDNS,DHCP,NATなど～

[前回](https://qiita.com/flets708/items/1aa6ffe578d7a93a7e7f)、VMPlayerの仮想ネットワークの勉強をしましたが、それとオープンソースソフトウェアルータである[VyOS](https://vyos.io/)を使ってネットワーク周りの設定をやってみます。

**＜全3回でやろうと思っていること＞**
[①VMware Playerの仮想ネットワーク設定](https://qiita.com/flets708/items/1aa6ffe578d7a93a7e7f)
[②VyOS1.4を使ったDNS,DHCP,NATなど](https://qiita.com/flets708/items/1a9514c343359045853c)　←今回はこれです。
　(1) 目標
　(2) VyOSのインストールからSSH接続まで
　(3) ntp, time-zone, dnsの設定
　(4) ゲストOSの接続(DHCP, DNS Forwarding)
　(5) ゲストOSのインターネットアクセス(NAT)
[③VyOS1.4とAWS VPC間のSite-to-Site-VPN接続](https://qiita.com/flets708/items/1feefd90fd1a45d52535)

**＜環境＞**
ホストOS： Windows10 20H2
ハイパーバイザ：　VMware WorkStation 16 Player 
ゲストOS①： CentOS 8
ゲストOS②： CentOS 7
仮想ルータ： VyOS 1.4

#(1)目標

下記の図のように、ゲストOS間・ゲストOS-インターネット間の通信がVyOSを経由して行われる構成を作る。

+ ゲストOSは、DHCPの機能を持つVyOSからIPアドレスを払い出される
+ ゲストOSは、インターネット向きのDNSクエリをVyOS経由で実施する
+ ホストからゲストOSへ、VyOS経由でSSHアクセスできるようにする

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/0945d814-95c3-ff8c-2389-ad72bc619b5c.png)

仮想ネットワークの設定は以下の通り。VMnet3およびVMnet4はVyOS側でIPアドレスを払い出すため、ハイパーバイザのDHCP機能は有効化しない。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/1d4e075a-2437-7ec8-d403-130752c5df20.png)


#(2)VyOSのインストールからSSH接続まで

##ダウンロードからOS起動まで

###イメージの入手

VyOSは[こちら](https://vyos.io/rolling-release/)の「Downloading Rolling Release」から入手する。
2021/5/22現在、LTS版は無償ダウンロードできないので、Rolling Releaseをダウンロードする。
（私は`vyos-1.4-rolling-202104290417-amd64.iso`をダウンロードしましたが、latestでもいいと思います）

###VMPlayerで起動

・「新規仮想マシンの作成」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/aa76d01a-ecc2-7358-c2b0-a619162ca04b.png)

・インストーラディスクイメージファイルに先ほどダウンロードしたVyOSイメージファイルを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/913899ab-4a21-06be-d4c6-8f8086bc17c7.png)


・ゲストOSはDebian 9.x 64ビットに設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/018294fa-0af3-e89b-d00c-a8b853efca8f.png)

・仮想マシンの名前は適当に決めて「次へ」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/13f61ff7-6bb5-62de-19aa-d1c0e477d139.png)

・ディスク容量はデフォルトのまま「次へ」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/004cfa1a-9ab8-f54a-1be4-fd5a61814dbf.png)

・ネットワークアダプタを設定するため、「ハードウェアをカスタマイズ」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/8e499437-73c3-b14b-ab2b-65eb7db14bae.png)

・一つ目のネットワークアダプタはVMnet0に設定し、「追加」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/9d6614e2-fdfc-26c6-8869-44362bb4633c.png)


・ネットワークアダプタを選択し、「完了」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/12e967db-1d7c-d8c8-6892-4de3c1ff6c70.png)

・追加されたネットワークアダプタ2はVMnet3に設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/887677fa-c1f3-04cb-706a-81f0eab7bfff.png)


・さらにネットワークアダプタ3も追加し、VMnet4も設定。その後「閉じる」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/f09dcc4e-b444-8644-7a34-a362a182884a.png)


・ネットワークアダプタが3つ設定されていることを確認し、「完了」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/f2094799-8bb8-628d-0a9d-5c3d5bdb7216.png)


・完了後に仮想マシンを再生すると、VyOSが起動する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/523c3f8d-321d-655b-36db-2126af11f9e1.png)


##OS起動後の設定と、SSHアクセスするまで

###OS起動後の設定
・OS起動後、ログインID、パスワードを設定する。ここではいずれも`VyOS`とする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/064da880-cf90-ea1b-63c5-f0185229eaf4.png)

・ログイン完了。`install image`と入力し、VyOSの設定を進める。何度か質問が飛んでくるが、最初`Continue?`と聞かれたときにYesと答えるのと、何回かパスワードを聞かれる以外はEnter押しまくってればOK。（`install image`をしないと、この後VyOSに入れる様々な設定が、再起動のたびに毎回消えてしまう。）

・`show int`(もしくは`show interfaces`)と打つと、ネットワーク情報が表示される。現時点では、いずれのネットワークアダプタにもIPアドレスが振られていない。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/608d1faa-933a-b3b7-e81e-e45422b70342.png)

###SSHアクセス

・IPアドレスの設定とSSHアクセスの設定をいれる。VyOSは`Conf (Configure)`で設定編集モードに入り、`set`コマンドで設定を入れた後、`commit`、`save`でその設定を反映させる。`exit`を押すと、通常モードに戻る。

```
$ conf
[edit]

!eth0にDHCPでアドレスが振られるよう設定。
#set interfaces ethernet eth0 address dhcp

!VyOSにsshでアクセスできるようにする。
#set service ssh

#commit
[edit]
#save
Saving configration to '/config/config.boot'...
Done
[edit]
#exit
exit

!再起動
#reboot

!再起動後に再度ネットワーク情報を確認
$show int
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
eth0             192.168.11.25/24                  u/u  
eth1             -                                 u/u  
eth2             -                                 u/u  
lo               -                                 u/u
                 ::1/128

!eth0にいれたdhcp設定の詳細も確認可能。
$ show dhcp client leases
interface  : eth0
ip address : 192.168.11.25      [Active]
subnet mask: 255.255.255.0
router     : 192.168.11.1
name server: 192.168.11.1
dhcp server: 192.168.11.1
lease time : 172800
last update: Sat May 22 07:56:03 JST 2021
expiry     : Mon May 24 07:56:01 JST 2021
reason     : BOUND

interface  : eth1
last update: Sun May 16 11:57:37 JST 2021
reason     : RELEASE

interface  : eth2
last update: Sun May 16 11:57:39 JST 2021
reason     : RELEASE
```

ちなみに、設定を入れるときは`set ~`だが、削除するときは`delete ~'となる。

```
$ conf

![例]間違えてeth1にdhcp設定を入れてしまった場合
# delete interfaces ethernet eth1 address dhcp

#commit
#save
#exit
```

・上記のようにeth0にアドレスが振られていれば、Teraterm等でsshアクセスが可能となる。（ID/PWはvyos/vyos）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820066/4934fc71-365d-a1ad-b944-1430bdba0c6d.png)

`show conf (configuration)`で設定した内容を確認することが可能(eth0にdhcp設定、serviceにsshが追加されている)。`/config/config.boot`ファイルを表示している。

```
$show conf
interfaces {
    ethernet eth0 {
        address dhcp
        hw-id 00:0c:29:0c:de:9b
    }
    ethernet eth1 {
        hw-id 00:0c:29:0c:de:a5
    }
    ethernet eth2 {
        hw-id 00:0c:29:0c:de:af
    }
    loopback lo {
    }
}
service {
    ssh {
    }
}
system {
    config-management {
        commit-revisions 100
    }
    console {
        device ttyS0 {
            speed 115200
        }
    }
    host-name vyos
    login {
        user vyos {
            authentication {
                encrypted-password ****************
                plaintext-password ****************
            }
        }
    }
    syslog {
        global {
            facility all {
                level info
            }
            facility protocols {
                level debug
            }
        }
    }
}
```

#(3)ntp, time-zone, dnsの設定

ルータ機能とは関係ないが、各種設定を入れる。

```
$ conf

!ntpの設定
# set system ntp server 'ntp.nict.jp'

!time-zoneの設定
# set system time-zone 'Asia/Tokyo'

!DNSの設定
# set system name-server '192.168.11.1'

# commit
# save
# exit

$ 
```

問題なく設定されていることを確認。

```
vyos@vyos:~$ date
Sat 22 May 2021 04:24:08 PM JST
vyos@vyos:~$ host www.google.com
www.google.com has address 172.217.25.68
www.google.com has IPv6 address 2404:6800:4004:809::2004
vyos@vyos:~$
```

#(4)ゲストOSの接続(DHCP, DNS Forwarding)

##DHCP
ゲストOSが接続できるよう、DHCPの設定を入れる。
まずはeth0~2の設定を入れるところから。(**これを先にやらないとDHCPがうまく設定されないので要注意**）
あと、**VyOS 1.3までと一部設定の仕方が違うので要注意**。

```
$ conf

!仮想ネットワークエディタで定義したセグメントのアドレスを設定
# set interfaces ethernet eth1 address '192.168.88.1/24'
# set interfaces ethernet eth2 address '192.168.153.1/24'

!各ネットワークインターフェースの説明を追記
# set interfaces ethernet eth0 description 'VMNet0,Bridge,Internet'
# set interfaces ethernet eth1 description 'VMNet3'
# set interfaces ethernet eth2 description 'VMNet4'

# commit
# save
# exit

!設定内容の確認
$ show int
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
eth0             192.168.11.25/24                  u/u  VMNet0,Bridge,Internet
eth1             192.168.88.1/24                   u/u  VMNet3
eth2             192.168.153.1/24                  u/u  VMNet4
lo               127.0.0.1/8                       u/u
                 ::1/128
```

VMNet3のサーバ（一番上の図で言うゲストOS①）にIPアドレスが払い出されるよう、設定を入れる。

```:VyOS
$ conf

!VMNet3dhcpという名前を付けて、セグメントとデフォルトルートを定義
# set service dhcp-server shared-network-name VMNet3dhcp subnet 192.168.88.0/24 default-router '192.168.88.1'

!DNSサーバをVyOSに設定（後でForwardingの設定もいれる）
# set service dhcp-server shared-network-name VMNet3dhcp subnet 192.168.88.0/24 dns-server '192.168.88.1'

!ネットワークの名称を設定
# set service dhcp-server shared-network-name VMNet3dhcp subnet 192.168.88.0/24 domain-name 'vmnet3.local'

!DHCPアドレスのリース時間を設定（デフォルトでは86400秒＝一日）
# set service dhcp-server shared-network-name VMNet3dhcp subnet 192.168.88.0/24 lease '600'

!DHCPで払い出すアドレスレンジがどこからどこまでかを設定（rangeのidを複数設定することも可能）
# set service dhcp-server shared-network-name VMNet3dhcp subnet 192.168.88.0/24 range 0 start '192.168.88.128'
# set service dhcp-server shared-network-name VMNet3dhcp subnet 192.168.88.0/24 range 0 stop '192.168.88.191'
```

同様にVMNet4向けの設定も入れる。

```:VyOS
# set service dhcp-server shared-network-name VMNet4dhcp subnet 192.168.153.0/24 default-router '192.168.153.1'
# set service dhcp-server shared-network-name VMNet4dhcp subnet 192.168.153.0/24 dns-server '192.168.153.1'
# set service dhcp-server shared-network-name VMNet4dhcp subnet 192.168.153.0/24 domain-name 'vmnet4.local'
# set service dhcp-server shared-network-name VMNet4dhcp subnet 192.168.153.0/24 lease '600'
# set service dhcp-server shared-network-name VMNet4dhcp subnet 192.168.153.0/24 range 1 start '192.168.153.128'
# set service dhcp-server shared-network-name VMNet4dhcp subnet 192.168.153.0/24 range 1 stop '192.168.153.159'
# commit
# save
# exit
```

設定完了後、dhcpの設定が正しく入っているか、VyOS、ゲストOSそれぞれで確認。

```:VyOS

!いくつアドレスを払い出しているか確認
vyos@vyos:~$ show dhcp server statistics
Pool          Size    Leases    Available  Usage
----------  ------  --------  -----------  -------
VMNet3dhcp      64         1           63  2%
VMNet4dhcp      32         1           31  3%

!払い出しているアドレス情報を確認
vyos@vyos:~$ show dhcp server leases
IP address       Hardware address    State    Lease start          Lease expiration     Remaining    Pool        Hostname
---------------  ------------------  -------  -------------------  -------------------  -----------  ----------  ----------
192.168.88.128   00:0c:29:b7:82:04   active   2021/05/22 17:13:09  2021/05/22 17:23:09  0:08:32      VMNet3dhcp  centos8-01
192.168.153.131  00:0c:29:d3:0e:2a   active   2021/05/22 17:12:53  2021/05/22 17:22:53  0:08:16      VMNet4dhcp  centos7-01

vyos@vyos:~$
```

```:ゲストOS①（CentOS-8）
[root@centos8-01 ~]# nmcli c
NAME                UUID                                  TYPE      DEVICE
Wired connection 1  54cdd836-be91-3ea8-973e-9bec0b08b1b3  ethernet  ens37
ens33               8c8833cf-8288-431c-b0da-4b3ed621805e  ethernet  ens33
virbr0              6348881d-417c-44ea-936d-13cb34b1af76  bridge    virbr0
[root@centos8-01 ~]# 
[root@centos8-01 ~]# 
[root@centos8-01 ~]# nmcli c show 54cdd836-be91-3ea8-973e-9bec0b08b1b3 | grep IP4
IP4.ADDRESS[1]:                         192.168.88.128/24
IP4.GATEWAY:                            192.168.88.1
IP4.ROUTE[1]:                           dst = 0.0.0.0/0, nh = 192.168.88.1, mt = 101
IP4.ROUTE[2]:                           dst = 192.168.88.0/24, nh = 0.0.0.0, mt = 101
IP4.DNS[1]:                             192.168.88.1
IP4.DOMAIN[1]:                          vmnet3.local
[root@centos8-01 ~]#
```

VMNet4も同様の手順で接続確認をしておく。

ちなみに、この時点でゲストOS①と②がVyOS経由で接続可能。

```:ゲストOS①
[root@centos8-01 ~]# ping 192.168.153.131
PING 192.168.153.131 (192.168.153.131) 56(84) bytes of data.
64 bytes from 192.168.153.131: icmp_seq=1 ttl=63 time=2.80 ms
64 bytes from 192.168.153.131: icmp_seq=2 ttl=63 time=4.41 ms
64 bytes from 192.168.153.131: icmp_seq=3 ttl=63 time=13.8 ms
64 bytes from 192.168.153.131: icmp_seq=4 ttl=63 time=4.92 ms
^C
--- 192.168.153.131 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 18ms
rtt min/avg/max/mdev = 2.802/6.485/13.810/4.301 ms
[root@centos8-01 ~]#
```

##DNS Forwarding

上記で、DHCPでアドレスが払い出されたサーバのDNS向き先も設定されているが、それをそのままフォワーディングして、ゲストOSから外部にDNSクエリが投げられるように設定を入れる。

```:VyOS
$ conf

!DNSクエリのアクセス元を設定
# set service dns forwarding allow-from '192.168.88.0/24'
# set service dns forwarding allow-from '192.168.153.0/24'

!どのネットワークインターフェースをlisten状態にするか設定
# set service dns forwarding listen-address '192.168.88.1'
# set service dns forwarding listen-address '192.168.153.1'

!フォワード先を設定
# set service dns forwarding name-server '192.168.11.1'

# commit
# save
# exit
```

ゲストOS①からDNSクエリが投げられることを確認。

```:ゲストOS①
[root@centos8-01 ~]# host www.google.com
www.google.com has address 172.217.24.132
www.google.com has IPv6 address 2404:6800:4004:818::2004
[root@centos8-01 ~]#
```

ゲストOS②からも同様にDNSクエリが投げられることを確認しておく。

#(5)ゲストOSのインターネットアクセス(NAT)

Source NAT (SNAT)、Destination NAT (DNAT)それぞれの設定をいれる。

##Source NAT
ゲストOS①はインターネットと直接つながっていないため、VyOSルータのアドレスでNATして、VyOS経由でインターネットアクセスする構成をとる。

```:VyOS
$conf

!NAT設定の説明を入れる
# set nat source rule 100 description 'SNAT from VMNet3 to external'

!eth0からインターネットに出るように設定
# set nat source rule 100 outbound-interface 'eth0'

!NAT元のアドレスレンジを設定
# set nat source rule 100 source address '192.168.88.0/24'

!NAT後のアドレスを設定（ここではVyOSのアドレスでマスカレードする設定をいれている）
# set nat source rule 100 translation address 'masquerade'

# commit
# save
# exit
```

ゲストOSのデフォルトゲートウェイがVyOSになっていて、インターネットにアクセスできることを確認する。

```:ゲストOS①
[root@centos8-01 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.88.1    0.0.0.0         UG    101    0        0 ens37
192.168.25.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.88.0    0.0.0.0         255.255.255.0   U     101    0        0 ens37
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

[root@centos8-01 ~]# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=10.8 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=10.3 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=118 time=12.2 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=118 time=15.2 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 15ms
rtt min/avg/max/mdev = 10.319/12.144/15.220/1.912 ms
```

VyOS側でSNATをどれくらいしているかも確認可能。

```:VyOS
vyos@vyos:~$ show nat source statistics

rule      pkts        bytes   interface
----      ----        -----   ---------

100        344        25528   eth0

```

##Destination NAT

SNATでインターネットアクセス自体はできるようになったが、ゲストOS①にホストOSからVyOS経由でアクセスするためのDestination NATも追加で設定しておく。

```:VyOS
$ conf

!DNATの説明を入れる
# set nat destination rule 1 description 'DNAT from external to VMNet3-centos8-01'

!VyOSにアクセスするときのポート番号を設定
# set nat destination rule 1 destination port '10022'

!VyOSにアクセスしてくる元のネットワークインターフェースを設定
# set nat destination rule 1 inbound-interface 'eth0'

!DNATのプロトコルを指定
# set nat destination rule 1 protocol 'tcp'

!NAT変換後のアドレス、ポートを設定
# set nat destination rule 1 translation address '192.168.88.128'
# set nat destination rule 1 translation port '22'

# commit
# save
# exit
```

ホストOSからゲストOS①にSSHアクセスできるようになったことを確認。

```:ホストOS
PS C:\Users\flets> ssh -p10022 admin@192.168.11.25
admin@192.168.11.25's password:
Activate the web console with: systemctl enable --now cockpit.socket

Last login: Sat May 22 01:26:56 2021 from 192.168.25.1
[admin@centos8-01 ~]$
```

#まとめ

今回はVyOSを使って色々なネットワーク設定をやってみました。
やっぱり自分で設定してみると理解が深まります。

ちなみに、設定コマンド全文は`config`で設定編集モードにした後に下記コマンドで確認可能。

```:VyOS
vyos@vyos# run show conf com
set interfaces ethernet eth0 address 'dhcp'
set interfaces ethernet eth0 description 'VMNet0,Bridge,Internet'
set interfaces ethernet eth0 hw-id '00:0c:29:0c:de:9b'
set interfaces ethernet eth1 address '192.168.88.1/24'
(以下略)
```

あと、config全文をはっておきます。

```:VyOS
vyos@vyos:~$ show conf
interfaces {
    ethernet eth0 {
        address dhcp
        description VMNet0,Bridge,Internet
        hw-id 00:0c:29:0c:de:9b
    }
    ethernet eth1 {
        address 192.168.88.1/24
        description VMNet3
        hw-id 00:0c:29:0c:de:a5
    }
    ethernet eth2 {
        address 192.168.153.1/24
        description VMNet4
        hw-id 00:0c:29:0c:de:af
    }
    loopback lo {
    }
}
nat {
    destination {
        rule 1 {
            description "DNAT from external to VMNet3-centos8-01"
            destination {
                port 10022
            }
            inbound-interface eth0
            protocol tcp
            translation {
                address 192.168.88.128
                port 22
            }
        }
    }
    source {
        rule 100 {
            description "SNAT from VMNet3 to external"
            outbound-interface eth0
            source {
                address 192.168.88.0/24
            }
            translation {
                address masquerade
            }
        }
    }
}
service {
    dhcp-server {
        shared-network-name VMNet3dhcp {
            subnet 192.168.88.0/24 {
                default-router 192.168.88.1
                dns-server 192.168.88.1
                domain-name vmnet3.local
                lease 600
                range 0 {
                    start 192.168.88.128
                    stop 192.168.88.191
                }
            }
        }
        shared-network-name VMNet4dhcp {
            subnet 192.168.153.0/24 {
                default-router 192.168.153.1
                dns-server 192.168.153.1
                domain-name vmnet4.local
                lease 600
                range 1 {
                    start 192.168.153.128
                    stop 192.168.153.159
                }
            }
        }
    }
    dns {
        forwarding {
            allow-from 192.168.88.0/24
            allow-from 192.168.153.0/24
            listen-address 192.168.88.1
            listen-address 192.168.153.1
            name-server 192.168.11.1
        }
    }
    ssh {
    }
}
system {
    config-management {
        commit-revisions 100
    }
    console {
        device ttyS0 {
            speed 115200
        }
    }
    host-name vyos
    login {
        user vyos {
            authentication {
                encrypted-password ****************
                plaintext-password ****************
            }
        }
    }
    name-server 192.168.11.1
    ntp {
        server 0.pool.ntp.org {
        }
        server 1.pool.ntp.org {
        }
        server 2.pool.ntp.org {
        }
    }
    syslog {
        global {
            facility all {
                level info
            }
            facility protocols {
                level debug
            }
        }
    }
    time-zone Asia/Tokyo
}
```

#参考
[VyOS 1.4のConfigration Guide](https://docs.vyos.io/en/latest/configuration/index.html)
[【VyOS】VyOSでDHCPサーバを設定してみた　その１　基本設定](https://techblog-cidept.blogspot.com/2018/03/vyosvyosdhcp.html)
[VyOS の基本設定 (DHCP/DNS/NAT/Firewall/その他)](https://www.qoosky.io/techs/3ba8da03c0)
[ESXi内のルーティングに必須！VyOSで仮想ルーター構築](https://www.isoroot.jp/blog/2859/)