LoginSignup
3
6

More than 1 year has passed since last update.

Ubuntu 20.04 LTSでリンクアグリゲーション(LACP)を組んでみた

Last updated at Posted at 2021-08-06

Ubuntu 20.04LTSの設定

既にUbuntu 20.04LTSではPC本体のLANインタフェース(enp1s0)に加え、USB接続のLANインタフェース(enx7cc2c6FFFFFF)を接続して2つのLANインタフェースが利用できる状態です。
この状態で/etc/netplan配下にあるyamlファイルに下記の「bonds:」以下の記載を追加することでLANインタフェースがまとめられて(リンクアグリゲーション)bond0というインタフェースができます。

$ sudo vim /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
  ethernets:
    enp1s0:
      addresses:
      - 192.168.2.6/24
      gateway4: 192.168.2.1
      nameservers:
        addresses:
        - 8.8.8.8
        - 8.8.4.8
        search: []
    enx7cc2c6FFFFFF:
      addresses:
      - 192.168.2.7/24
      gateway4: 192.168.2.1
      nameservers:
        addresses:
        - 8.8.8.8
        - 8.8.4.4
        search: []
  bonds:
    bond0:
      interfaces: [enp1s0, enx7cc2c6FFFFFF]
      addresses: [192.168.2.8/24]
      gateway4: 192.168.2.1
      parameters:
        mode: 802.3ad
        transmit-hash-policy: layer3+4
        mii-monitor-interval: 1
      nameservers:
        addresses:
        - 8.8.8.8
        - 8.8.4.4
  version: 2
  renderer: NetworkManager

設定の反映

ファイルを保存したら設定を反映させるため下記を実行します。

$ sudo netplan apply

インタフェースの確認

bond0というインタフェースができていることが確認できました。
($ ip aで見ればenp1s0とenx7cc2c6FFFFFF表示されます)

$ ip -4 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    inet 192.168.2.8/24 brd 192.168.2.255 scope global noprefixroute bond0
       valid_lft forever preferred_lft forever

スイッチの設定

リンクアグリゲーション(LAPC)に対応しているスイッチを用意します。
ここではAlliedTelesisのx510-28GTXを利用します。
2つのLANインタフェース(enp1s0とenx7cc2c6FFFFFF)はx510-28GTXのポート番号3(port1.0.3)とポート番号4(port1.0.4)に接続しています。

awplus>en
awplus#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
awplus(config)#int port1.0.3-port1.0.4
awplus(config-if)#channel-group 1 mode active
awplus(config-if)#
awplus#write memory
Building configuration...
[OK]
awplus#sh etherchannel
LAG Maximum        : 128
LAG Static  Maximum: 96
LAG Dynamic Maximum: 32
LAG Static  Count  : 0
LAG Dynamic Count  : 1
LAG Total   Count  : 1
Lacp Aggregator: po1
Member:
 port1.0.3
 port1.0.4
awplus#

疎通確認

確認はWindows10 PC(192.168.2.3)からpingで行います。

C:\>ping 192.168.2.8

192.168.2.8 に ping を送信しています 32 バイトのデータ:
192.168.2.8 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.2.8 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.2.8 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.2.8 からの応答: バイト数 =32 時間 <1ms TTL=64

192.168.2.8 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 0ms、最大 = 0ms、平均 = 0ms

これでUbuntu 20.04LTSのPCとスイッチ間でリンクアグリゲーションによる接続と疎通確認ができました。
次回はUbuntu 20.04 LTSのPCをサーバにして2台のクライアントPCからiperf3によるスループット測定を同時に行い、各々、1Gbpsの速度がでるか試してみたいと思います。

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