Software & AppsOperating SystemLinux

Creating a Bond Interface in Ubuntu 18.04 with Netplan

Ubuntu 3

In this article, we will walk through the process of creating a bond interface in Ubuntu 18.04 using Netplan. This can be a useful technique for improving network performance and reliability.

Quick Answer

Creating a bond interface in Ubuntu 18.04 with Netplan is a straightforward process. By configuring the Netplan configuration file with the appropriate settings for your network interfaces, you can easily combine them into a single logical interface for improved network performance and reliability.

What is a Bond Interface?

A bond interface combines two or more network interfaces into a single logical interface. This can increase the network bandwidth and provide redundancy in case one of the physical interfaces fails. There are several modes for bonding interfaces, each with its own advantages and drawbacks.

What is Netplan?

Netplan is a utility for easily configuring networking on a Linux system. You simply create a YAML description of the required network interfaces and what each should be configured to do. From this description, Netplan will generate all the necessary configuration for your chosen renderer tool.

Prerequisites

Before you start, you need to have:

  • Ubuntu 18.04 installed on your machine.
  • Access to a user account with sudo or root privileges.
  • Basic knowledge of networking and the command line.

Steps to Create a Bond Interface

Step 1: Open the Netplan Configuration File

Open the Netplan configuration file using a text editor. You can use any text editor you prefer, but for this example, we’ll use nano:

sudo nano /etc/netplan/50-cloud-init.yaml

Step 2: Configure the Bond Interface

Replace the contents of the file with the following configuration:

network:
 version: 2
 renderer: networkd
 ethernets:
 enp5s4:
 dhcp4: no
 enp5s9:
 dhcp4: no
 enp64s0:
 dhcp4: no
 bonds:
 bond0:
 interfaces: [enp5s4, enp5s9, enp64s0]
 parameters:
 mode: 802.3ad
 lacp-rate: fast
 transmit-hash-policy: layer2
 bridges:
 br0:
 interfaces: [bond0]
 dhcp4: no
 addresses: [192.168.0.8/24]
 gateway4: 192.168.0.1
 nameservers:
 addresses: [8.8.8.8, 8.8.4.4]

Step 3: Customize the Configuration

Customize the configuration according to your network setup. Replace enp5s4, enp5s9, and enp64s0 with the names of your network interfaces. Adjust the IP addresses, gateway, and DNS servers to match your network configuration.

Here’s a brief explanation of the parameters:

  • mode: 802.3ad – This sets the bonding mode to 802.3ad which is also known as Link Aggregation Control Protocol (LACP).
  • lacp-rate: fast – This sets the rate at which LACP packets are sent (fast means every second).
  • transmit-hash-policy: layer2 – This determines the outgoing traffic distribution.

Step 4: Apply the Configuration

Save the file and exit the text editor. Then, apply the new configuration by running the following command:

sudo netplan apply

Step 5: Reboot Your Machine

Reboot your machine to activate the bond interface and the new network configuration.

Conclusion

This configuration creates a bond interface named bond0 with the specified network interfaces. It also creates a bridge interface named br0 that is connected to the bond interface. The bridge interface is configured with a static IP address, gateway, and DNS servers.

Creating a bond interface in Ubuntu 18.04 using Netplan is a straightforward process. With a few simple steps, you can improve your network performance and reliability.

Remember to always back up your current configuration before making any changes, and test new configurations on non-critical systems where possible.

If you encounter any issues or need further assistance, please provide more details about the problem you’re facing. You can also refer to the Netplan documentation for more information.

Can I create a bond interface with different types of network interfaces?

Yes, you can create a bond interface with different types of network interfaces. Netplan supports bonding interfaces with different speeds and types, as long as they are supported by the bonding driver in the Linux kernel.

Can I add or remove network interfaces from a bond interface after it is created?

Yes, you can add or remove network interfaces from a bond interface after it is created. You will need to modify the Netplan configuration file and apply the changes using the netplan apply command. However, keep in mind that adding or removing interfaces from a bond interface may cause a temporary disruption in network connectivity.

Can I use a bond interface with a DHCP configuration?

Yes, you can use a bond interface with a DHCP configuration. In the Netplan configuration, you can set the dhcp4 parameter to yes for the bond interface or the bridge interface connected to it. This will allow the bond interface to obtain its IP address dynamically from a DHCP server.

Can I use a bond interface with a static IP configuration?

Yes, you can use a bond interface with a static IP configuration. In the Netplan configuration, you can set the IP address, gateway, and DNS servers for the bridge interface connected to the bond interface. This will assign a static IP address to the bond interface.

How can I check the status of my bond interface?

You can check the status of your bond interface by running the ip link show command. Look for the bond interface name (e.g., bond0) in the output. If the bond interface is up and running, it should show the state as UP. Additionally, you can use the cat /proc/net/bonding/bond0 command to view detailed information about the bond interface, including the active and backup interfaces.

Leave a Comment

Your email address will not be published. Required fields are marked *