1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【2023年8月版】VyOSを使ったESXi内ルーティング

Last updated at Posted at 2023-08-09

はじめに

ESXi内部、複数PortGroup間で通信したいな。。。
そうだ、VyOSでESXiにルーター構築しよう!

(いままで、Ubuntu22.04のiptablesでNATやNAPTしてたけど、
ルーターOS使ってみたかったというのが本音)

目的

VyOSをルータとして、ESXiのPortGroup間で通信できる、インターネットに接続できるように構築する

環境

インターネット接続ネットワークは 192.168.0.0/24
デフォルトゲートウェイは 192.168.0.1
内部ネットワークは2つ Inner10(VLAN110): 10.10.10.0/24Inner20(VLAN120): 10.10.20.0/24 を PortGroup として用意する
内部ネットワークからインターネット接続ネットワークへは VyOS上で、NAPT(IPマスカレード) を使用
EXSi上でVyOS1.3をインストールし、vyos01 とする
VyOSのインストールは以下の記事を参照
→ 【2023年8月版】VyOSインストールiso作成から、ESXi7/8へのインストール
vyos01 上には、インターネット接続ネットワークとして eth0、内部ネットワークとして eth1, eth2 を割り当てる
ユーザは vyos を利用
DNSは Google(8.8.8.8) を利用
NTPは ntp.nict.jp を利用
IPv6は利用しない

インターフェイスの設定

eth0, eth1, eth2 にIPアドレスを設定
デフォルトゲートウェイを設定
DNSを設定

$ conf
# set system host-name vyos01
# set interfaces ethernet eth0 address 192.168.0.10/24
# set interfaces ethernet eth1 address 10.10.10.254/24
# set interfaces ethernet eth1 address 10.10.20.254/24
# set protocols static route 0.0.0.0/0 next-hop 192.168.0.1
# set system name-server '8.8.8.8'
# commit
# save
# exit

IPv6の無効化

$ conf
# set system ipv6 disable
# commit
# save
# exit

タイムゾーンの設定

$ conf
# set system time-zone 'Asia/Tokyo'
# commit
# save
# exit

SSH の設定

ssh を有効化
ssh のポートを変更
vyos ユーザの公開鍵を設定
vyos ユーザの公開鍵を ssh-rsa に設定
ssh のパスワード認証を無効化

$ conf
# set service ssh
# set service ssh port 20221	
# set system login user vyos authentication public-keys 'admin' key 'AAA...='
# set system login user vyos authentication public-keys 'admin' type 'ssh-rsa'
# set service ssh disable-password-authentication
# commit
# save
# exit

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

NAPTの外側インターフェイスを eth0 に設定
受け付けるアドレスを設定
マスカレードを設定

$ conf
# set nat source rule 1 outbound-interface eth0
# set nat source rule 1 source address 10.10.10.0/24
# set nat source rule 1 translation address masquerade 
# set nat source rule 2 outbound-interface eth0
# set nat source rule 2 source address 10.10.20.0/24
# set nat source rule 2 translation address masquerade 
# commit
# save
# exit

NAT の設定(必要であれば)

SSHを ProxyCommand で多段接続できるなら必要ない
NATの内側インターフェイスを eth0 に設定
受け付けるポートを設定
受け付けるプロトコルを設定
転送先アドレスを設定
転送先ポートを設定

$ conf
# set nat destination rule 2 inbound-interface 'eth0'
# set nat destination rule 2 destination port '22'
# set nat destination rule 2 protocol 'tcp'
# set nat destination rule 2 translation address '10.10.10.10'
# set nat destination rule 2 translation port '22'
# commit
# save
# exit

NAT の状況確認

$ show nat source translations detail
$ show nat destination translations detail

NTP の設定

$ conf
# delete system ntp server
# set system ntp server ntp.nict.jp
# commit
# save
# exit
$ show ntp

静的ホストマッピング

/etc/hostsに記入と同じく、IPアドレスとホスト名をマッチングさせる
ここでは host1192.168.0.101 にマッピング

$ conf
# set system static-host-mapping host-name host1 inet 10.10.10.10
# set system static-host-mapping host-name host2 inet 10.10.10.11
# set system static-host-mapping host-name host3 inet 10.10.10.12
# set system static-host-mapping host-name host4 inet 10.10.20.10
# set system static-host-mapping host-name host5 inet 10.10.20.11
# set system static-host-mapping host-name host6 inet 10.10.20.12
# commit
# save
# exit

静的ルーティング

$ conf
# set protocols static route 10.10.10.0/24 next-hop 10.10.10.254
# set protocols static route 10.10.20.0/24 next-hop 10.10.20.254
# commit
# save
# exit

構成のバックアップとレストア

  • 手動によるバックアップとレストア
  • save / load コマンドによるバックアップとレストア

手動によるバックアップとレストア

バックアップ

$ show configuration commands > configuration.20230809

レストア

$ conf
#
configuration.20230809の内容をペースト
 :
 :
# commit
# save
# exit

save / load コマンドによるバックアップとレストア

バックアップ

$ conf
# save configuration.20230809
# exit

レストア

$ conf
# load configuration.20230809
# exit

さいごに

かんたんでしたね

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?