Unifi USG WAN Failover

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.