Need help bonding (2) NICs for a ESXi environment

Hardware: Mikrotik RB750Gr2 RouterBOARD hEX 64MB Gig 5 Ports OSL4

Router OS Version: 6.35.2

Hi everyone,

First experience with RouterOS–I’m attempting to finish my homelab set up. I’ve done this in other units (cisco, enterasys, extreme) and am struggling now.

I have dual 1G NIC’s in my server. I have team NICs enabled on the EXSi and working happily.

I want to bond the (2) ports on the routerboard now to have full redundancy.

Eth1 = wan
Eth2 = Slave-Master
Eth3= Slave
Eth4= Slave
Eth5= Slave

When I attempt to create the bond, I use the following:

Slaves: Eth4, Eth5
Mode: Broadcast
Link Mirroring: mii
Transmit Hash Policy: Layer 2

I keep getting an error message about eth2 being the slave-master.

I was going to switch the eth2-5 roles to be “none” instead of slave/slave-master.

Can someone help?

You can’t use Bonding on slave ports. Bonding is performed at the CPU, but when you designate a port as a slave, that port is now controlled by the switch chip, not the CPU. To use ports 4 and 5 as a bonded pair, you’ll need to remove them from the Master/Slave configuration, allowing the CPU to perform the bonding. Know, however, that you’re not going to get any speed aggregation as a result of this bond. Your device is only capable of a maximum of about 1 gbps through the CPU, and all ports share a single 1 gbps link to the CPU. Bonding using this device will impose some CPU overhead and provide a redundant link, but you will not get any more speed.

If redundancy is all you’re after, then go for it, but if you’re also trying to get more speed out of the bonded link, you need a stronger router with ports directly connected to the CPU. The other option is to use a switch, like the CRS, and use the Trunk feature, which will do static link aggregation (but not LACP), allowing you to exceed 1 gbps, assuming the clients accessing the server also have multiple links, or assuming multiple concurrent client connections.