wwan0.network - RequiredForOnline=no
qmi-network@.service - add more variables for ping options & increase ping timeouts
This commit is contained in:
parent
69b5458185
commit
6e7218c685
|
@ -16,3 +16,6 @@ LLDP=no
|
||||||
[DHCP]
|
[DHCP]
|
||||||
# Make sure connection/route is chosen last!
|
# Make sure connection/route is chosen last!
|
||||||
RouteMetric=2048
|
RouteMetric=2048
|
||||||
|
|
||||||
|
[Link]
|
||||||
|
RequiredForOnline=no
|
||||||
|
|
|
@ -22,7 +22,8 @@ KillMode=process
|
||||||
##
|
##
|
||||||
|
|
||||||
# Ping host.
|
# Ping host.
|
||||||
Environment=PHOST="one.one.one.one"
|
Environment=PHOST="dns9.quad9.net"
|
||||||
|
Environment=PHOSTIP="9.9.9.9"
|
||||||
|
|
||||||
# Normal wwan%i metric (should be higher than all other dev).
|
# Normal wwan%i metric (should be higher than all other dev).
|
||||||
Environment=NMETRIC=1025
|
Environment=NMETRIC=1025
|
||||||
|
@ -31,7 +32,13 @@ Environment=NMETRIC=1025
|
||||||
Environment=FOMETRIC=128
|
Environment=FOMETRIC=128
|
||||||
|
|
||||||
# Ping test interval.
|
# Ping test interval.
|
||||||
Environment=TESTINT=20
|
Environment=PTESTINT=20
|
||||||
|
|
||||||
|
# Ping timeout. (Ping timeout / knock-out)
|
||||||
|
Environment=PTESTKO=30
|
||||||
|
|
||||||
|
# Ping count (Number of pings).
|
||||||
|
Environment=PTESTCOUNT=3
|
||||||
|
|
||||||
##
|
##
|
||||||
|
|
||||||
|
@ -52,8 +59,11 @@ ExecStartPre=networkctl up wwan%i
|
||||||
# give it some time to be ready before starting the connection process.
|
# give it some time to be ready before starting the connection process.
|
||||||
ExecStartPre=-sh -e -c "sleep 5; qmi-network /dev/cdc-wdm%i start && sleep 5;"
|
ExecStartPre=-sh -e -c "sleep 5; qmi-network /dev/cdc-wdm%i start && sleep 5;"
|
||||||
|
|
||||||
|
# Do a test ping before we start the main loop.
|
||||||
|
ExecStartPre=sh -e -c "ping -w ${PTESTKO} -I wwan%i -c ${PTESTCOUNT} ${PHOSTIP}"
|
||||||
|
|
||||||
# Main loop with **very basic** failover.
|
# Main loop with **very basic** failover.
|
||||||
ExecStart=sh -e -c "while true; do ping -w 10 -I wwan%i -c 3 one.one.one.one 2>&1 >/dev/null; (ping -w 10 -c 3 ${PHOST} 2>&1 >/dev/null && ifmetric wwan%i ${NMETRIC}) || (ping -w 10 -I wwan%i -c 3 ${PHOST} 2>&1 >/dev/null && ifmetric wwan%i ${FOMETRIC}); sleep ${TESTINT}; done;"
|
ExecStart=sh -e -c "while true; do ping -w ${PTESTKO} -I wwan%i -c ${PTESTCOUNT} ${PHOSTIP} 2>&1 >/dev/null; (ping -w ${PTESTKO} -c ${PTESTCOUNT} ${PHOST} 2>&1 >/dev/null && ifmetric wwan%i ${NMETRIC}) || (ping -w ${PTESTKO} -I wwan%i -c ${PTESTCOUNT} ${PHOST} 2>&1 >/dev/null && ifmetric wwan%i ${FOMETRIC}); sleep ${PTESTINT}; done;"
|
||||||
|
|
||||||
# Stop.. DOWN TIME!
|
# Stop.. DOWN TIME!
|
||||||
ExecStop=networkctl down wwan%i
|
ExecStop=networkctl down wwan%i
|
||||||
|
|
Loading…
Reference in New Issue