Vyatta(VyOS) L2ブリッジ設定

スポンサーリンク

Vyatta(VyOS)で、L2ブリッジの設定方法を説明します。L2ブリッジそのものは難しい設定ではないですが、vxlanやgeneveの動作確認時にも使用しますので、確実に理解した方が良いでしょう。

設定まとめ

以下のコマンドでブリッジインターフェースを作成できます。ブリッジ名はbrXXXという命名にする必要があります。

set interfaces bridge <bridge name>

以下のコマンドでブリッジインターフェースに対してIPアドレスを付与できます。

set interfaces bridge <bridge name> address <IPv4アドレス>
set interfaces bridge <bridge name> address <IPv6アドレス>

以下のコマンドでブリッジに所属させるメンバーを定義できます。

set interfaces bridge <bridge name> interface <インターフェース名>

以下のコマンドでサブインターフェースを作成する事ができます。例えば、eth0にVLAN30を付与するサブインターフェースを作成するならば、そのインターフェース名は「eth0.30」という名前で以降の使用が可能です。

set interfaces ethernet <インターフェース名> vif <VLAN ID>

動作確認

動作確認の構成

以下の環境で動作確認を行います。ブリッジを含む動作確認をする時は、ハイパーバイザの仮想スイッチに対してプロミスキャスモード等を有効にする必要がある事に注意ください。

+-----------------------+
|        host001        |
|    Rocky Linux 8.4    |
+-----------+-----------+
            | ens224    : 192.168.10.1/24
            | ens224.20 : 192.168.20.1/24
            | 
            | 
       eth1 | 
+-----------+-----------+
|         vy002         |
|  br10:192.168.10.2/24 |
|  br20: no ip address  |
+-----------+-----------+
       eth2 | 
            | 
            | 
            | ens224.20 : 192.168.20.3/24
            | ens224    : 192.168.10.3/24
+-----------+-----------+
|        host003        |
|    Rocky Linux 8.4    |
+-----------------------+

初期設定

RockyLinuxにはIPアドレスを付与します。VyOSは初期設定の状態で動作確認をします。

host001 : Rocky Linux 8.4
[root@host001 ~]# ip address

 <omitted>

3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:8e:96:66 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.1/24 brd 192.168.10.255 scope global noprefixroute ens224
       valid_lft forever preferred_lft forever
    inet6 fe80::8813:7d0:ffd3:2c04/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
4: ens224.20@ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:50:56:8e:96:66 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.1/24 brd 192.168.20.255 scope global noprefixroute ens224.20
       valid_lft forever preferred_lft forever
    inet6 fe80::6d4f:6dd7:2466:7b5/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
vy002 : VyOS 1.4
set interfaces ethernet eth0 hw-id '00:50:56:8e:95:20'
set interfaces ethernet eth1 hw-id '00:50:56:8e:bd:89'
set interfaces loopback lo
set system config-management commit-revisions '100'
set system console device ttyS0 speed '115200'
set system host-name 'vyos'
set system login user vyos authentication encrypted-password '$6$tMjC07ln2rEuCnYQ$NrbFEUQTzGprNHwkxo5skkG5h4rX1G6RQxdpo61p3MF77PluwdJgfP9UlYT7f1Nr.gIFKoQdAsKRBykNU24.I/'
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'
host003 : Rocky Linux 8.4
[root@host003 ~]# ip address 

  <omitted>

3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:8e:83:9b brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.3/24 brd 192.168.10.255 scope global noprefixroute ens224
       valid_lft forever preferred_lft forever
    inet6 fe80::5fb3:768b:ed49:2f24/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
4: ens224.20@ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:50:56:8e:83:9b brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.3/24 brd 192.168.20.255 scope global noprefixroute ens224.20
       valid_lft forever preferred_lft forever
    inet6 fe80::8494:67f2:cbdb:add8/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

動作確認 (1) bridge 作成

vy002のeth0とeth1を同一bridgeに所属させ、host001とhost003が互いにLayer2で接続可能になるようにします。

br10という名前でbridge interfaceを作成します。

[vy002:VyOS1.4]
set interfaces bridge br10

br10にIPアドレスを付与します。

[vy002:VyOS1.4]
set interfaces bridge br10 address '192.168.10.2/24'

br10にeth0とeth1を所属されます。なお、bridgeのメンバーに加える事ができるインターフェースはIPアドレスが付与されてないインターフェースのみです。

[vy002:VyOS1.4]
set interfaces bridge br10 member interface eth0
set interfaces bridge br10 member interface eth1

host001からvy002とhost003へ疎通可能になった事を確認します。

[host001:RockyLinux8.4]
[root@host001 ~]# ping -c 3 192.168.10.2
PING 192.168.10.2 (192.168.10.2) 56(84) bytes of data.
64 bytes from 192.168.10.2: icmp_seq=1 ttl=64 time=0.441 ms
64 bytes from 192.168.10.2: icmp_seq=2 ttl=64 time=0.487 ms
64 bytes from 192.168.10.2: icmp_seq=3 ttl=64 time=0.413 ms

--- 192.168.10.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2043ms
rtt min/avg/max/mdev = 0.413/0.447/0.487/0.030 ms
[root@host001 ~]# 
[root@host001 ~]# 
[root@host001 ~]# 
[root@host001 ~]# ping -c 3 192.168.10.3
PING 192.168.10.3 (192.168.10.3) 56(84) bytes of data.
64 bytes from 192.168.10.3: icmp_seq=1 ttl=64 time=0.681 ms
64 bytes from 192.168.10.3: icmp_seq=2 ttl=64 time=0.688 ms
64 bytes from 192.168.10.3: icmp_seq=3 ttl=64 time=0.893 ms

--- 192.168.10.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2031ms
rtt min/avg/max/mdev = 0.681/0.754/0.893/0.098 ms
[root@host001 ~]# 

動作確認 (1) bridgeとVLANの併用例

host001のサブインターフェースens224.20とhost003のサブインタフェースens224.20が互いに疎通可能になるようbridgeを設定します。VyOSのbridgeはvlanを付与したサブインターフェースをメンバーに加える事も可能です。

まずは、vlan20を付与したサブインターフェースを作成します。

set interfaces ethernet eth0 vif 20
set interfaces ethernet eth1 vif 20

ここで一度commitします。その後、config modeを離脱し、再度config modeに入ります。この操作をする事によって、eth0.20のようなサブインターフェースが入力補完の候補として登場するようになります。

vyos@vyos# commit
[edit]
vyos@vyos# exit
Warning: configuration changes have not been saved.
exit
vyos@vyos:~$ configure 
[edit]
vyos@vyos# 

上記の操作にうまくいけば、以下のような入力補完が現れます。

vyos@vyos# set interfaces bridge br20 member interface 
Possible completions:
 > <text>       Member interface name
 > eth0         
 > eth0.20      
 > eth1         
 > eth1.20      
 > lo  

br20を作成し、eth0.20とeth1.20をbr20のメンバーに加えます。

set interfaces bridge br20 member interface eth0.20
set interfaces bridge br20 member interface eth1.20

VLAN20を介して、host001とhost003が互いに疎通可能になった事を確認します。

[root@host001 ~]# ping -c 3 192.168.20.3
PING 192.168.20.3 (192.168.20.3) 56(84) bytes of data.
64 bytes from 192.168.20.3: icmp_seq=1 ttl=64 time=0.704 ms
64 bytes from 192.168.20.3: icmp_seq=2 ttl=64 time=0.858 ms
64 bytes from 192.168.20.3: icmp_seq=3 ttl=64 time=0.854 ms

--- 192.168.20.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2063ms
rtt min/avg/max/mdev = 0.704/0.805/0.858/0.075 ms
[root@host001 ~]# 
タイトルとURLをコピーしました