Das Unifi USG ist beim WAN Failover aus meiner bescheidenen Sicht etwas übereifrig beim Umschalten. So kommt es mehr oder weniger täglich vor, dass binnen einer Minute ein Failover von WAN auf WAN2 erfolgt und in der selben Minute wieder von WAN2 auf WAN zurück geschaltet wid:
WAN iface [eth0] transition to state [inactive] 19:36 01-02-2021
WAN iface [eth2] transition to state [active] 19:36 01-02-2021
WAN iface [eth0] transition to state [active] 19:36 01-02-2021
WAN iface [eth2] transition to state [failover] 19:36 01-02-2021
Im Unifi-Controller kann man da gar nichts konfigurieren, dies geht nur über SSH direkt am USG. Die LoadBalancer-Konfiguration bzw. den Status kann man mit folgenden Befehlen anzeigen lassen:
admin@usg-irgendwo:~$ show load-balance watchdog
Group wan_failover
eth0
status: Running
pings: 353
fails: 4
run fails: 0/3
route drops: 11
ping gateway: ping.ubnt.com - REACHABLE
last route drop : Mon Feb 1 20:21:12 2021
last route recover: Mon Feb 1 20:21:49 2021
eth2
status: Running
failover-only mode
pings: 230
fails: 11
run fails: 0/3
route drops: 6
ping gateway: ping.ubnt.com - REACHABLE
last route drop : Mon Feb 1 20:41:24 2021
last route recover: Mon Feb 1 20:41:48 2021
admin@usg-irgendwo:~$ show load-balance status
Group wan_failover
interface : eth0
carrier : up
status : active
gateway : 192.168.0.1
route table : 201
weight : 100%
flows
WAN Out : 795000
WAN In : 174000
Local Out : 6466
interface : eth2
carrier : up
status : failover
gateway : 192.168.1.1
route table : 202
weight : 0%
flows
WAN Out : 7339
WAN In : 0
Local Out : 70
Zur Prüfung der WAN-Verbindung wird also "ping.ubnt.com" angepingt. Geht das 3 Mal schief (run fails) wird umgeschaltet. Hier kann man die Konfiguration natürlich auch ändern, aber man sollte zumindest ungefähr wissen was man da gerade macht, sonst steht man vielleicht schnell ohne funktionierende WAN-Verbindung da ;-)
Konfiguration starten:
admin@usg-irgendwo:~$ configure
[edit]
Ändern des Pingziels:
admin@usg-irgendwo# set load-balance group wan_failover interface eth0 route-test type ping target
Possible completions:
<x.x.x.x> IPv4 address to ping
<h:h:h:h:h:h:h:h>
Ipv6 address to ping
Beispiel anhand des CloudFlare DNS als Pingziel:
admin@usg-irgendwo# set load-balance group wan_failover interface eth0 route-test type ping target 1.1.1.1
Das Ping-Intervall kann wie folgt konfiguriert werden:
admin@usg-irgendwo# set load-balance group wan_failover interface eth0 route-test interval
Possible completions:
<1-65535> Ping interval in seconds (default 10)
Befehl zum festlegen der Anzahl an Ping-Fehlversuchen bis ein WAN-Failover eingeleitet wird:
admin@usg-irgendwo# set load-balance group wan_failover interface eth0 route-test count failure
Possible completions:
<1-65535> Number of failures before link is down (default 3)
Einstellen der Anzahl an erfolgreichen Pings bis wieder zurück geschaltet wird:
admin@usg-irgendwo# set load-balance group wan_failover interface eth0 route-test count success
Possible completions:
<1-65535> Number of successful pings for link up (default 3)
Die oben angeführten Einstellungen kann man für beide WAN Adapter (eth0 und eth2) getrennt vornehmen.
Hat man alle Settings bereit müssen sie abgesegnet werden:
admin@usg-irgendwo# commit
[edit]
admin@usg-irgendwo# save
Saving configuration to '/config/config.boot'...
Done
[edit]
Damit die Konfiguration beim nächsten Provisioning nicht überschrieben wird, muss diese noch exportiert und am Unifi-Controller abgelegt werden. Wie das genau funktioniert soll aber Inhalt eines der nächsten Beiträge sein.