A single gigabit Ethernet link may not be enough for demanding networks – or you may need redundancy to prevent a cable failure from taking down a critical connection. Bonding (link aggregation) combines two or more physical interfaces into a single logical interface, increasing throughput and/or providing failover. This guide covers MikroTik's bonding options, configuration steps, and real‑world use cases.
Why Use Bonding?
- Increased bandwidth – Two 1 Gbps links can (ideally) give up to 2 Gbps aggregate throughput.
- Redundancy – If one physical link fails, traffic continues over the remaining links.
- Load balancing – Traffic is distributed across member links based on a hash policy.
- Cost‑effective – Use multiple cheap switches or NICs instead of upgrading to a single faster port.
Prerequisites
- MikroTik router with at least two free Ethernet ports (or a switch with bonding support).
- The other side (switch or server) must also support the same bonding mode (e.g., LACP 802.3ad).
- All physical interfaces should have the same speed and duplex (e.g., all 1 Gbps full duplex).
Bonding Modes in RouterOS
MikroTik supports several bonding modes. The most common are:
1. 802.3ad (LACP) – Recommended
Industry standard. Link Aggregation Control Protocol (LACP) negotiates the bond with the peer. It dynamically detects link failures and changes. Supports load balancing based on Layer 2/3/4 hashing (configurable).
2. Active‑Backup
Only one interface is active at a time. If the active fails, the backup takes over. No load balancing, but simple and widely compatible.
3. Balance‑XOR
Transmits packets using a simple hash (MAC or IP). No negotiation protocol; both sides must be configured identically by hand. Works well but is less fault‑tolerant than LACP.
4. Broadcast
Sends all traffic on all interfaces. Rarely used – can cause duplication and loops.
Step 1: Create a Bond Interface
Decide which bonding mode you need. For a switch‑to‑router LACP trunk, use 802.3ad.
/interface bonding add name=bond1 slaves=ether2,ether3 mode=802.3ad
WinBox: Interfaces → Bonding → Add New → Name, Slaves, Mode.
Step 2: Configure Bonding Parameters (Optional)
You can adjust link monitoring and re‑balancing frequencies:
/interface bonding set bond1 link-monitoring=mii mii-interval=100ms down-delay=0ms up-delay=0ms
For LACP, you may also set the transmit hash policy (affects load balancing):
/interface bonding set bond1 transmit-hash-policy=layer-2-and-3
Options: layer-2 (MAC), layer-3-and-4 (IP & port), layer-2-and-3 (balanced).
Step 3: Assign IP Address to the Bond Interface
Treat the bond like any other interface.
/ip address add address=192.168.100.1/24 interface=bond1
Step 4: (If Using LACP) Configure the Peer Switch
On your managed switch (Cisco, Juniper, MikroTik CRS, etc.), create a LAG/LACP trunk on the ports connected to the MikroTik. For a MikroTik switch:
/interface bonding add name=bond1 slaves=ether1,ether2 mode=802.3ad
Then add the bond to a bridge or configure routing as needed. The LACP negotiation should happen automatically.
Step 5: Add Bond to Bridge (If Using as a Switch Port)
Often, you'll add the bond to a bridge (e.g., for LAN connectivity).
/interface bridge add name=bridge-lan
/interface bridge port add bridge=bridge-lan interface=bond1
Then assign the bridge an IP address.
Step 6: Test Link Aggregation
Verify bond status:
/interface bonding print status
/interface bonding print detail
Look for active slaves and lacp-mode=active (if LACP). Generate traffic and check load distribution:
/tool torch interface=bond1
Advanced: Active‑Backup Mode (Simple Failover)
If your switch doesn't support LACP, use active‑backup. Only one link carries traffic; the other sits idle until failure.
/interface bonding add name=bond1 slaves=ether2,ether3 mode=active-backup primary=ether2
primary specifies which interface is preferred. If it fails, the other takes over; when the primary returns, it becomes active again.
Advanced: Load Balancing with Balance‑XOR
Use this when both sides support static link aggregation (common in Linux servers).
/interface bonding add name=bond1 slaves=ether2,ether3 mode=balance-xor transmit-hash-policy=layer-3-and-4
Then, at the server side, create a bonded interface with mode balance‑xor and the same hash policy.
Troubleshooting Bonding
- Bond not coming up / slave interfaces showing "inactive": For LACP, ensure the peer switch is configured correctly. Check that both ends use the same mode, speed, and duplex. Try disabling/enabling the bond or updating RouterOS.
- Throughput lower than expected: Single‑stream TCP/IP uses only one slave (due to hash on source/destination). Multiple concurrent streams will balance. For near‑linear scaling, use multiple connections or adjust the hash policy to layer‑3‑and‑4.
- Packet loss or disconnects during failover: Monitor the recovery time; it's usually sub‑second for active‑backup, but LACP may take a few seconds. Fine‑tune down‑delay/up‑delay for your environment.
- Incorrect MTU: Bond inherits the lowest MTU of its slaves. Set a consistent MTU on all physical interfaces before creating the bond.
Real‑World Use Cases
1. High‑Bandwidth Router to Core Switch
You have a MikroTik CCR and a CRS switch. Bond four gigabit ports between them using LACP. The router gets up to 4 Gbps of throughput to the switch core, and any single cable failure doesn't interrupt the network.
2. Server Redundancy
A MikroTik router acts as the gateway for a hypervisor. Bond two NICs on the router and two on the server using active‑backup or LACP. This eliminates the server's NIC as a single point of failure.
3. ISP Aggregation
You have two separate gigabit feeds from the same upstream provider (on different ports). Bond them with 802.3ad to get a single 2 Gbps logical link (if the provider supports LACP).
Performance Considerations
- Hash policy matters – For mixed traffic, layer‑3‑and‑4 (IP + port) distributes better than layer‑2 (MAC). However, layer‑2 has less CPU overhead.
- Line‑rate bonding – Some MikroTik devices (e.g., hAP ac, RB4011) can bond multiple gigabit ports near wire‑speed; slower devices may be CPU‑limited. Check your router's block diagram.
- Don't bond across different interface speeds – Mixing 1 Gbps and 100 Mbps will cause unpredictable results.
Conclusion
Bonding is a powerful tool for increasing throughput and reliability. For most environments, use 802.3ad (LACP) – it's standard, auto‑configures, and handles failures gracefully. Start with two interfaces, test with iperf3, then expand to more links as needed. Always ensure your switch configuration mirrors the router's mode and hash policy. With bonding, you can maximise your existing hardware before upgrading to faster ports.
Next steps: explore bonding over VLANs (trunk of bonded links carrying multiple VLANs) or combine bonding with VRRP for router redundancy.