On 10/6/20, Chris <[email protected]> wrote: > Hello Jason, > > setup is > two default routes with diffenrent metrics (the second being the failover in > > case the lower metric connection goes down). > For good reasons wg-quick will setup an individual route to the wg server > (for > the possibility of changing th default route afterwards). > However wg-quick fails: > > ******log follows*********** > wg-quick up wg_client > [#] ip link add wg_client type wireguard > [#] wg setconf wg_client /dev/fd/63 > [#] ip -4 address add 10.0.129.200/24 dev wg_client > [#] ip link set mtu 1420 up dev wg_client > [#] GATEW=$(ip route list 0.0.0.0/0|sed -n 's/.* via \(.*\) > dev.*/\1/p');route > add s1.spam-free.eu gw $GATEW > SIOCADDRT: No such device
Where did you get your wg-quick? I would never name a variable 'GATEW' or print out an expression like that to the console. IOW, I don't recognize what's happening here because this doesn't seem to be code I've shipped. > [#] ip link delete dev wg_client > ******log end *********** > > The point is, that GATEW is NOT a single address but rather a list of ip > addresses and the command setting the route fails. > > Instead one should always run through ALL default gateways and set > individual > routes to the server through ALL the default gateways with the same metric > as > the respective default route. > This will then also work in case the failover route is in operation. > > Of course, tearing down the client should delete ALL individual routes to > the > server. > Hope this clarifies is a bit. > > Cheers, > Chris > > On 06/10/2020 14:20, Jason A. Donenfeld wrote: >> On Mon, Oct 5, 2020 at 3:51 PM Chris <[email protected]> wrote: >>> wg-quick tries to set the route to the wg server through the default >>> gateway. >> On Linux? It shouldn't be iterating default gateways at all, but >> rather using suppress_prefix. Can you provide more technical >> information about what you're seeing and maybe a patch to fix the >> issue? >> >> Jason >
