LoginSignup
3
1

More than 3 years have passed since last update.

【ubuntu20.04serverで仮想化基盤構築】bridge interface作成

Last updated at Posted at 2020-08-09

最終目的

ubuntu20.04server上にkvmを使って仮想化基盤を構築する.

ホスト側にGUI環境はなく,ネットワーク設定や仮想化構築はCUIで進める.
デスクトップ環境を使わず(導入せず)CUIで構築する理由は特にありません.ただコマンドでいろいろ構築したかったから.

おことわり

説明するために必ずしも合っているとは限らない例や状態,状況を使う場合があることを先に記しておきます.
これは自分が理解する際に正しい説明がされている記事を読んでいてもいまいちピンと来なかった時,理解するために考えた例を使うためです.
一応参考にした別記事は都度都度リンクを貼っていくつもりなので詳しくは,正しくはそちらを参照してください.

あと,パラメータ(ipアドレスとか)も必ずしも現実であり得る値をとっているとは限りません.あくまでも例としてみてください.(正しさを都度都度確認していると記事が進まなかったので...)

初期状態

  • ubuntu20.04 serverインストール済みサーバ
  • remote pc(mac)からsshでubuntuにログイン

ネットワーク設定

これから作成するVMを外からログインできるようにするためにネットワーク設定を行います.(今言ってる「外」は仮想ネットワークの外部,ローカルネットワーク内の他pcとかです.外だからと言って必ずしもこれを行ってインターネット側からログインが可能になるわけではない.別に設定とかが必要になる場合有)

netplanを使ってブリッジ作成

netplanでネットワーク設定をいじっていきます.いくつか記事をみてみるとNetwork-Manager(nmcli)を使う記事が多いですが,ubuntu20.04serverだとaptなどでインストールしないと入ってなかったので netplanでいきます.

設定ファイル新規作成

自分の場合は最初から/etc/netplan/00-installer-config.yamlが存在しますが, この記事(あるいはその記事の参考)で触れられているように触らない方が良いみたいなので/etc/netplan/99_config.yamlを作成してそこに設定を書きます.

user@ubuntu:~$ sudo touch /etc/netplan/99_config.yaml

設定変更

設定することは
* bridge"br0"作成
* ethernet"enp3s0"のdhcp無効化
* bridge"br0"のipアドレス固定化(ipアドレス: 192.168.100.28)
* bridge"br0"とethernet"enp3s0"を接続
です.
"br0"のipアドレスは必ずしもstaticにしなくても良いと思います.

/etc/netplan/99_config.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:
      dhcp4: no
  bridges:
    br0:
      dhcp4: no
      addresses:
        - 192.168.100.28/24
      interfaces:
        - enp3s0
      gateway4: 192.168.100.1
      nameservers:
        addresses: [192.168.100.1,8.8.8.8]
      parameters:
        forward-delay: 0
        stp: false
      optional: true

設定の適用

user@ubuntu:~$ sudo netplan apply

確認

"enp3s0"から'inet'の記述がなくなって"br0"が表示されていることは確認でます.
自分の場合はdhcpのときに"enp3s0"に割り当てられていたipアドレスをそのまま"br0"のipアドレスにしたのでリモートからの状態でも接続断することなく設定適用できました.(もしもを考えてそのまま変更適用しない方がよかったかもしれませんが...)

user@ubuntu:~$ ip addr
...
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000
    link/ether 24:be:05:14:44:a4 brd ff:ff:ff:ff:ff:ff
...
4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 24:be:05:14:44:a4 brd ff:ff:ff:ff:ff:ff
    inet 192.168.150.32/24 brd 192.168.150.255 scope global br0
       valid_lft forever preferred_lft forever
    inet6 2405:6580:97e0:2e00:26be:5ff:fe14:44a4/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 2591851sec preferred_lft 604651sec
    inet6 fe80::26be:5ff:fe14:44a4/64 scope link
       valid_lft forever preferred_lft forever

参考

次回

kvm周りを導入する予定

3
1
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
3
1