Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

On current Ubuntu releases, configure network bonding with Netplan: define the physical Ethernet ports under ethernets:, create a logical bond0 under bonds:, and put the IP address, routes, and DNS settings on bond0—not on the individual ports.

Use active-backup for straightforward NIC or cable redundancy. Use 802.3ad only when the switch is configured for a compatible LACP port channel. Apply changes remotely with netplan try, which can roll back an unconfirmed configuration after its default 120-second timeout.

What network bonding does

Linux network bonding combines two or more physical Ethernet interfaces beneath one logical interface, commonly named bond0. Applications, routes, and addresses use the bond while the bonding driver manages its member interfaces.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Depending on the mode, bonding can provide:

  • Fault tolerance: traffic can continue when a NIC, cable, or switch path fails.
  • Load distribution: traffic can be distributed across members according to the selected mode and hash policy.
  • Link aggregation: LACP can coordinate multiple links with a managed switch.
  • A simpler host configuration: services use one logical interface and one IP configuration.

Bonding does not automatically double bandwidth. In many modes, a single flow remains on one physical link. Aggregate throughput may increase across multiple flows, but the result depends on the bonding mode, hash policy, switch, peer, and traffic pattern. The Linux bonding driver documentation describes these behaviors in detail.

#1 Best Overall
Sale
TP-Link USB to Ethernet Adapter,Support Nintendo Switch,1Gbps,Plug and Play
  • 𝐇𝐢𝐠𝐡-𝐒𝐩𝐞𝐞𝐝 𝐔𝐒𝐁 𝐄𝐭𝐡𝐞𝐫𝐧𝐞𝐭 𝐀𝐝𝐚𝐩𝐭𝐞𝐫 - UE306 is a USB 3.0 Type-A to RJ45 Ethernet adapter that adds a reliable wired network port to your laptop, tablet, or Ultrabook. It delivers fast and stable 10/100/1000 Mbps wired connections to your computer or tablet via a router or network switch, making it ideal for file transfers, HD video streaming, online gaming, and video conferencing.
  • 𝐔𝐒𝐁 𝟑.𝟎 𝐟𝐨𝐫 𝐅𝐚𝐬𝐭𝐞𝐫, 𝐌𝐨𝐫𝐞 𝐒𝐭𝐚𝐛𝐥𝐞 𝐃𝐚𝐭𝐚 𝐓𝐫𝐚𝐧𝐬𝐟𝐞𝐫𝐬- Powered via USB 3.0, this adapter provides high-speed Gigabit Ethernet without the need for external power(10/100/1000Mbps). Backward compatible with USB 2.0/1.1, it ensures reliable performance across a wide range of devices.
  • 𝐒𝐮𝐩𝐩𝐨𝐫𝐭𝐬 𝐍𝐢𝐧𝐭𝐞𝐧𝐝𝐨 𝐒𝐰𝐢𝐭𝐜𝐡- Easily connect your Nintendo Switch to a wired network for faster downloads and a more stable online gaming experience compared to Wi-Fi.
  • 𝐏𝐥𝐮𝐠 𝐚𝐧𝐝 𝐏𝐥𝐚𝐲- No driver required for Nintendo Switch, Windows 11/10/8.1/8, and Linux. Simply connect and enjoy instant wired internet access without complicated setup.
  • 𝐁𝐫𝐨𝐚𝐝 𝐃𝐞𝐯𝐢𝐜𝐞 𝐂𝐨𝐦𝐩𝐚𝐭𝐢𝐛𝐢𝐥𝐢𝐭𝐲- Supports Nintendo Switch, PCs, laptops, Ultrabooks, tablets, and other USB-powered web devices; works with network equipment including modems, routers, and switches.

Choose the bonding mode first

Requirement Recommended mode Important condition
Simple redundancy for a server active-backup Usually needs no switch aggregation configuration.
Aggregate bandwidth across multiple flows 802.3ad The switch must use compatible LACP configuration.
Two links connected to independent switches Usually active-backup The upstream topology must provide a valid path to the same network and gateway.
Two ordinary switch ports with no LAG configuration active-backup Do not use LACP unless the ports are configured as one aggregation group.

active-backup: the conservative default

Only one member carries traffic at a time. If that member loses its link, another member becomes active. This mode generally does not combine both links for throughput and normally does not require switch-side aggregation.

It is often the right choice for a first bonding deployment, but connecting members to different switches is not automatically safe. The switches must provide a consistent path to the same Layer-2 network and gateway. A multi-chassis LAG or similar switch design may be required for more complex topologies.

802.3ad: LACP aggregation

802.3ad uses IEEE 802.3ad Link Aggregation Control Protocol. Both Linux and the switch must agree on the aggregation group. The switch ports normally need matching speed, duplex, VLAN or trunk settings, and MTU.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A single TCP or UDP connection may still use only one member because traffic selection uses a hash. LACP is most useful when the host has multiple simultaneous flows or when the network design specifically requires link aggregation.

Netplan supports lacp-rate: slow and lacp-rate: fast. Slow sends LACPDUs approximately every 30 seconds; fast sends them approximately every second. The setting applies to LACP mode.

Other modes

Netplan also documents modes including balance-rr, balance-xor, broadcast, balance-tlb, and balance-alb. Their switch requirements and transmit or receive behavior differ substantially. Use them only when your network design specifically calls for them; active-backup and 802.3ad cover the common redundancy and LACP cases.

Before you configure bonding

The main procedure applies to Ubuntu Server 24.04 LTS and later, and the same broad Netplan structure applies to Ubuntu 22.04 LTS. Ubuntu installations can use either systemd-networkd or NetworkManager as the Netplan renderer, so check the existing configuration rather than assuming one backend. Ubuntu’s documentation index lists supported-release documentation at help.ubuntu.com.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Amazon Basics USB 3.0 to 10/100/1000 Gigabit Ethernet Internet Adapter, Compatible with Windows and macOS, Black
  • Connects a USB 3.0 device (computer/laptop) to a router, modem, or network switch to deliver Gigabit Ethernet to your network connection. Does not support Smart TV or gaming consoles (e.g.Nintendo Switch).
  • Supported features include Wake-on-LAN function, Green Ethernet & IEEE 802.3az-2010 (Energy Efficient Ethernet)
  • Supports IPv4/IPv6 pack Checksum Offload Engine (COE) to reduce Cental Processing Unit (CPU) loading
  • Compatible with Windows 8.1 or higher, Mac OS

Prepare the following:

  • Two or more physical Ethernet interfaces.
  • Administrative access.
  • A local console or out-of-band recovery path if the server is remote.
  • The intended DHCP or static-address plan, including IPv6, routes, and DNS.
  • Switch and cabling information. LACP requires switch-side configuration.
  • A backup of the current Netplan files.

Do not assume the interfaces are named eth0 and eth1. Predictable names such as enp1s0 and enp2s0 are common.

ip -br link
ip link
sudo ethtool enp1s0
sudo ethtool enp2s0

Replace the example interface names with the names shown on your system. Inspect the existing Netplan files before adding another one:

ls -l /etc/netplan
sudo netplan get

Netplan merges YAML files. A cloud-init-generated file or another existing definition can conflict with a new file, so do not blindly create a second configuration without understanding what is already present.

Configure active-backup with Netplan

Create a file such as /etc/netplan/01-bond.yaml. YAML indentation is significant; use spaces, not tabs.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

DHCP example

network:
  version: 2
  ethernets:
    enp1s0:
      dhcp4: false
      dhcp6: false
    enp2s0:
      dhcp4: false
      dhcp6: false

  bonds:
    bond0:
      interfaces:
        - enp1s0
        - enp2s0
      parameters:
        mode: active-backup
        mii-monitor-interval: 100
      dhcp4: true
      dhcp6: false

The member interfaces are declared under ethernets: and referenced by the bond’s interfaces: list. They do not receive independent addresses or DHCP leases. The bond receives the DHCP lease.

Static IPv4 example

The following uses documentation-only addresses from 192.0.2.0/24. Replace every address, interface name, and DNS server with values from your network.

network:
  version: 2
  renderer: networkd

  ethernets:
    enp1s0:
      dhcp4: false
      dhcp6: false
    enp2s0:
      dhcp4: false
      dhcp6: false

  bonds:
    bond0:
      interfaces:
        - enp1s0
        - enp2s0
      addresses:
        - 192.0.2.10/24
      routes:
        - to: default
          via: 192.0.2.1
      nameservers:
        addresses:
          - 192.0.2.1
          - 1.1.1.1
      parameters:
        mode: active-backup
        mii-monitor-interval: 100

Here, renderer: networkd is explicit. If the installation is managed by NetworkManager, use the renderer already appropriate for that system instead of copying this value without checking.

Rank #3
Sale
USB A/C to Ethernet Adapter, 3xUSB3.0 and 1000M RJ45 Network hub for Laptop
  • [Expansion Ports] The USB C to Ethernet Adapter expands the device to three USB 3.0 ports and one Gigabit Ethernet port. Provides you more peripheral ports while maintaining a stable network connection, plug and play, no driver required.
  • [Gigabit Network Port] ALL-LUCKY USB Ethernet Adapter transmission rate up to 1000Mbps, also compatible with 10/100Mbps bandwidth. It allows you to enjoy a smooth and stable network connection and avoid too much lag. (Note: To reach 1Gbps, please use CAT6 or above Ethernet cable connection)
  • [Convertible Connector]This usb hub with ethernet not only has USB-A connector, but also can be converted to USB-C connector, so that you can easily convert the connector according to the device port, improve the convenience of use.
  • [High-Speed Data Transfer] The usb to ethernet adapter adopts USB 3.0 transmission technology, supports up to 5Gbps transmission rate, and is compatible with USB 2.0(480Gbps),USB 1.0(12Mbps), easily transfer video, files and other data for you in seconds. (Note: Maximum output current is 900mA, does not support charging devices.)
  • [Widely Compatible]The usb c ethernet adapter for iMac, MacBook Pro, iPad Pro, XPS and many other devices. Compatible with Windows 11/10/8.1/8, Mac OS, iPad OS, Chrome OS.(Note: Driver is required on Win 7) It can be used in office, school, library and other occasions, compact and portable, easy to carry around.

Put the address, default route, and nameservers on bond0. Leaving DHCP or a static address on the physical members can create competing leases, routing errors, or unpredictable traffic.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Netplan’s link-aggregation guide and the Netplan configuration reference document the bond syntax and available parameters.

Apply the configuration safely

Back up the configuration and validate the generated backend configuration before changing the live network:

sudo cp -a /etc/netplan /etc/netplan.backup
sudo netplan generate

If generate reports an error, fix the YAML before proceeding. For additional diagnostics:

sudo netplan --debug generate

For an SSH session, use:

sudo netplan try

netplan try applies the configuration temporarily and asks you to confirm it. Its documented default rollback timeout is 120 seconds. If connectivity is broken, do not confirm the change; allow the timeout to expire or cancel the test, then verify that the previous configuration returned. Keep a console session available because a rollback plan is not a substitute for out-of-band access.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

After a successful test, confirm the prompt. On a local console or with a configuration that has already been tested, you can apply it directly:

sudo netplan apply

netplan apply generates configuration for the selected backend and invokes either systemd-networkd or NetworkManager. See the netplan-try manual and netplan-apply manual for the rollback and application behavior.

Rank #4
Anker USB C to Ethernet Adapter, Portable 1 Gbps Network Hub
  • The Anker Advantage: Join the 65 million+ powered by our leading technology.
  • Instant Internet: Connect to the internet instantly from virtually any USB-C 3.0 device, and enjoy stable connection speeds of up to 1 Gbps.
  • Lightweight and Compact: The space-saving and portable design measures just over half an inch thick and weighs about the same as a AA battery.
  • Premium Build: Features a sleek aluminum exterior and braided-nylon cable to complement the design of high-end devices.
  • What You Get: PowerExpand USB-C to Gigabit Ethernet Adapter, welcome guide, 18-month worry-free warranty, and friendly customer service.

Verify that the bond is healthy

Check the logical interface and its address:

ip -br addr show bond0
ip link show bond0
sudo netplan status bond0

Then inspect bond-specific state:

cat /proc/net/bonding/bond0

For an active-backup bond, look for:

  • The expected bonding mode.
  • MII Status: up.
  • Both expected member interfaces.
  • One member identified as active and the other as backup.
  • No unexpected link-failure counters.

For a networkd-managed system, this can provide additional state:

networkctl status bond0

Also test the actual network path, not only the local interface:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
ip route
ping -c 4 192.0.2.1
getent hosts example.com

Replace the gateway with the real gateway. Confirm that the address is on bond0, not on a member, and that the expected default route and DNS behavior are present.

Test active-backup failover

First record the active member:

cat /proc/net/bonding/bond0

Temporarily disable that member:

sudo ip link set enp1s0 down

Check that the other member becomes active and that the gateway remains reachable:

cat /proc/net/bonding/bond0
ping -c 4 192.0.2.1

Restore the interface afterward:

sudo ip link set enp1s0 up

This test is useful but limited. Administratively bringing an interface down does not reproduce every physical failure. A cable, transceiver, switch port, or upstream path can fail while the local link still reports carrier. MII monitoring primarily detects link state, not end-to-end reachability. Test a physical path during a maintenance window when the failure scenario matters.

Configure LACP with 802.3ad

Before applying this configuration, create one LACP aggregation group on the switch and add both switch ports to it. The ports must have compatible VLAN membership or trunk settings, MTU, speed, and duplex. Two ordinary ports on unrelated switches are not a valid LACP bundle unless the switches provide a multi-chassis or stacked LAG design.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Example static-address configuration:

network:
  version: 2
  renderer: networkd

  ethernets:
    enp1s0:
      dhcp4: false
      dhcp6: false
    enp2s0:
      dhcp4: false
      dhcp6: false

  bonds:
    bond0:
      interfaces:
        - enp1s0
        - enp2s0
      addresses:
        - 192.0.2.10/24
      routes:
        - to: default
          via: 192.0.2.1
      nameservers:
        addresses:
          - 192.0.2.1
      parameters:
        mode: 802.3ad
        lacp-rate: fast
        mii-monitor-interval: 100
        transmit-hash-policy: layer2

transmit-hash-policy: layer2 is only an example. layer2+3 or layer3+4 can distribute traffic differently, especially when many IP and port flows are present. The best policy depends on the switch’s hashing behavior and your network design.

Best Value
Sale
BENFEI USB 3.0 to Ethernet Adapter, USB C to RJ45 Gigabit LAN (1000Mbps) Network Adapter, Compatible with MacBook/Pro/Air, Surface Pro, Windows 11/10/8/7, Mac OS [Aluminium Shell&Nylon Cable]
  • COMPACT DESIGN - The compact-designed portable BENFEI USB A/C to Ethernet adapter connects your computer or tablet to a router,modem or network switch for network connection. It adds a standard RJ45 port to your Ultrabook, notebook or Macbook Air for file transferring, video conferencing, gaming, and HD video streaming.
  • SUPERIOR STABILITY - Built-in advanced IC chip works as the bridge between RJ45 Ethernet cable and your USB A/C devices. The driver-free installation with native driver support in Chrome, Mac, and Windows OS; The USB A/C Ethernet adapter dongle supports important performance features including Wake-on-Lan (WoL), Full-Duplex (FDX) and Half-Duplex (HDX) Ethernet, Crossover Detection, Backpressure Routing, Auto-Correction (Auto MDIX).
  • INCREDIBLE PERFORMANCE - Supports full 10/100/1000Mbps gigabit ethernet performance over USB A/C's 5Gbps bus, faster and more reliable than most wireless connections. Link and Activity LEDs. USB powered, no external power required. Backward compatible with USB 2.0/1.1.✅ To reach 1Gbps, make sure to use CAT6 & up Ethernet cables.
  • BROAD COMPATIBILITY - The USB A/C-Ethernet adapter is compatible with Windows 11/10/8.1/8/7/Vista/XP, Mac OSX 10.6/10.7/10.8/10.9/10.10/10.11/10.12, Linux kernel 3.x/2.6, Android and Chrome OS.Compatible with IEEE 802.3, IEEE 802.3u and IEEE 802.3ab. Supports IEEE 802.3az (Energy Efficient Ethernet).❌Do Not Support Windows RT. (NOT compatible with Nintendo Switch.)
  • 18 MONTH WARRANTY - Exclusive BENFEI Unconditional 18-month Warranty ensures long-time satisfaction of your purchase; Friendly and easy-to-reach customer service to solve your problems timely.

After applying the configuration, inspect:

cat /proc/net/bonding/bond0

A healthy LACP bond should report Bonding Mode: IEEE 802.3ad Dynamic link aggregation, LACP information, an active aggregator, and each expected member assigned to that aggregator. Check the switch as well. A healthy Linux bond alone does not prove that the switch formed the intended LAG.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshooting common failures

bond0 does not appear

  • Check YAML indentation and spelling.
  • Confirm that the physical names match ip -br link.
  • Run sudo netplan generate and sudo netplan --debug generate.
  • Check whether another YAML file defines conflicting interfaces.
  • Confirm the selected renderer is installed and managing the system.

The server loses connectivity after applying YAML

If you used netplan try, allow the 120-second confirmation window to expire or cancel the test. If you used netplan apply, use the console or out-of-band path and restore the backup configuration if necessary. Common causes include a wrong interface name, incorrect gateway, an unsuitable renderer, a conflicting DHCP definition, or an address left on a member interface.

Only one link works

That is expected in active-backup during normal operation. One member carries traffic while the other waits. If you expected simultaneous use, verify that the mode is 802.3ad, the switch has one compatible LACP group, and the traffic consists of multiple flows. A single flow may still remain on one link.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

LACP has no active aggregator

  1. Confirm both Linux members have carrier.
  2. Confirm both switch ports belong to the same LACP group.
  3. Check whether the switch is using dynamic LACP rather than an incompatible static or individual-port configuration.
  4. Compare VLAN, trunk, MTU, speed, and duplex settings.
  5. Inspect cat /proc/net/bonding/bond0 and the switch’s LACP counters.
  6. Test with one member at a time and review logs.
journalctl -b -u systemd-networkd
journalctl -b | grep -Ei 'bond|netplan|network'

An old bond remains after changing the YAML

Netplan is stateless and may not automatically remove a virtual device that was previously created but is no longer described. If you have confirmed that the bond should be removed and that doing so will not interrupt required traffic, delete the stale device and reapply:

sudo ip link delete dev bond0
sudo netplan apply

Be careful on remote systems. Deleting the bond can immediately remove its address and routes.

Failover does not restore connectivity

Check that link monitoring is configured and that the backup path reaches the same gateway and VLAN. MII monitoring can see carrier while the upstream route is broken. Other available bonding parameters include ARP monitoring, ARP targets, gratuitous ARP counts, primary-member selection, and failover-MAC behavior. Treat these as advanced tuning for a specific topology, not mandatory additions to every initial configuration. The exact options are listed in the Netplan reference.

DHCP does not work

Ensure DHCP is enabled only on bond0, unless you have deliberately designed another arrangement. Disable DHCP on all members, verify that the switch ports carry the expected VLAN, and check whether the DHCP server is reachable through the active path.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Legacy /etc/network/interfaces configurations

Older Ubuntu systems or installations intentionally managed by ifupdown may use /etc/network/interfaces and the ifenslave workflow. That is a compatibility path, not the standard starting point for a fresh modern Ubuntu installation using Netplan.

Do not mix an old ifupdown definition with a Netplan-managed definition for the same interfaces. First determine which system owns networking, then follow the matching documentation. The Linux bonding documentation covers legacy examples, and Ubuntu’s older UbuntuBonding guide is useful for interpreting /proc/net/bonding/bond0. The current Netplan path remains the preferred method for supported modern Ubuntu installations.

Important limitations

  • Bonding does not provide application-level high availability. The server, service, gateway, and upstream network can still fail.
  • Two ports on the same physical NIC do not protect against failure of that NIC, its PCIe slot, firmware, or shared hardware.
  • Cloud instances often cannot perform useful physical bonding because the provider controls the underlying network and may not expose independent Layer-2 links.
  • Hypervisors may require virtual-switch or port-group configuration. Guest bonding cannot fix a hypervisor that exposes only one usable uplink or filters required traffic.
  • Bonding is not the same as bridging, VLAN tagging, multipath TCP, or routing across separate networks.
  • Aggregate throughput depends on traffic distribution. Do not promise that two 1-Gbit/s links produce 2 Gbit/s for one connection.

Final checklist

  • Correct physical interface names were confirmed.
  • The intended mode is selected: active-backup for simple redundancy or 802.3ad for a correctly configured LACP design.
  • Member interfaces have no independent IP addresses or DHCP leases.
  • The IP address, routes, and DNS settings are on bond0.
  • The correct Netplan renderer is being used.
  • Existing YAML files and cloud-init ownership were checked.
  • netplan generate succeeds.
  • Remote changes were tested with netplan try.
  • /proc/net/bonding/bond0 shows the expected members and link state.
  • Failover was tested, and the configuration survives a reboot.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.