I am attempting to do balance-aware multi-WAN bonding to an AWS Server to provide link aggregation.
Note: not using a NAT gateway, as docs say don’t do that.
ZeroTeir documentation mentions monitoring links for quality metrics etc, and the below command shows said metrics however is all empty values.
I was thinking of creating a script to pull quality values out so I could monitor the link quality over time.
Is this an expected result as of the time of this CLI / Bonding version, or is something wrong?
Ive read through the git / blogs to see multi WAN bonding has had pending 2.0 changes, as well as the CLI had some changes coming soon.
I also don’t get why each link has 3 paths, would have expected one path per interface (2), or one path per the direction of traffic (4). ?? Does someone know if that’s normal?
# zerotier-cli peers
<ztaddr> <ver> <role> <lat> <link> <lastTX> <lastRX> <path>
XXXXXXXXX 1.8.6 LEAF 0 DIRECT 618 63 13.54.142.60/9993
# zerotier-cli bond XXXXXXXXX show
Peer : XXXXXXXXX
Bond : balance-aware
Link Select Method : 0
Status : Healthy
Links : 6/6
Failover Interval : 250 (ms)
Up Delay : 0 (ms)
Down Delay : 0 (ms)
Packets Per Link : 0 (ms)
Interface Name Path Alive
--------------------------------------------------------------------------------
[0] eth0 Y.Y.Y.Y/9993 0
[1] eth0 Y.Y.Y.Y/9993 0
[2] eth0 Y.Y.Y.Y/9993 0
[3] eth1 Y.Y.Y.Y/9993 0
[4] eth1 Y.Y.Y.Y/9993 0
[5] eth1 Y.Y.Y.Y/9993 0
Latency Jitter Loss Error Speed Alloc
--------------------------------------------------------------------------------
[0] 0.000 0.000 0.000 0.000 0 0
[1] 0.000 0.000 0.000 0.000 0 0
[2] 0.000 0.000 0.000 0.000 0 0
[3] 0.000 0.000 0.000 0.000 0 0
[4] 0.000 0.000 0.000 0.000 0 0
[5] 0.000 0.000 0.000 0.000 0 0
Versions
Ubuntu: 20.04.4 LTS
ZeroTeir: 1.8.7 (on multi wan side), 1.8.6 on AWS side.
Config
Settings on both sides of the setup are both set with balance-aware2 for the peer.
And one server has 2 interfaces, the other just one.
# cat /var/lib/zerotier-one/local.conf
{
"settings":
{
"allowTcpFallbackRelay": false,
"defaultBondingPolicy": "balance-aware2",
"policies":
{
"balance-aware2":
{
"basePolicy": "balance-aware",
"failoverInterval": 250,
"balancePolicy": "flow-dynamic",
"rebalanceStrategy": "aggressive",
"links": {
"eth0": { "speed": 5000 },
"eth1": { "speed": 5000 }
}
}
},
"peerSpecificBonds":
{
"XXXXXXXXX":"balance-aware2"
}
}
}