Network Bonding with Netplan (Ubuntu)
# /etc/netplan/01-storage-bond.yaml
network:
version: 2
renderer: networkd
ethernets:
eth1:
mtu: 9000
eth2:
mtu: 9000
bonds:
bond0:
interfaces: [eth1, eth2]
mtu: 9000
addresses: [10.100.1.101/24]
parameters:
mode: 802.3ad
lacp-rate: fast
mii-monitor-interval: 100
transmit-hash-policy: layer3+4
# Apply configuration
sudo netplan apply
# Verify
cat /proc/net/bonding/bond0
Network Bonding with ifupdown (Debian)
# /etc/network/interfaces
auto eth1
iface eth1 inet manual
bond-master bond0
mtu 9000
auto eth2
iface eth2 inet manual
bond-master bond0
mtu 9000
auto bond0
iface bond0 inet static
address 10.100.1.101/24
bond-slaves none
bond-mode 802.3ad
bond-miimon 100
bond-xmit-hash-policy layer3+4
mtu 9000
Understanding LACP Load Balancing
LACP uses hash-based distribution-there's no guarantee of balanced traffic:
-
Each flow (source/dest IP+port) uses a single link.
-
Single NFS mount may use only one link.
-
Use
nconnectto create multiple TCP connections that may hash to different links.
Firewall Configuration (UFW)
# Allow outbound NFS
sudo ufw allow out to any port 2049 proto tcp
sudo ufw allow out to any port 111 proto tcp
# If strict incoming rules needed
sudo ufw allow from <NFS_SERVER_IP> to any port 2049
# Verify
sudo ufw status verbose