Compare commits
2 commits
f8dcf9d781
...
cfad7fbe19
Author | SHA1 | Date | |
---|---|---|---|
cfad7fbe19 | |||
5b464b4ebd |
2 changed files with 7 additions and 8 deletions
modules/nixos/services/vpn/wireguard
|
@ -4,6 +4,11 @@ let
|
||||||
cfg = config.local.services.vpn.wireguard;
|
cfg = config.local.services.vpn.wireguard;
|
||||||
|
|
||||||
addrsViaDefaultInterface = import ./defaultInterfaceAddrs.secret.nix;
|
addrsViaDefaultInterface = import ./defaultInterfaceAddrs.secret.nix;
|
||||||
|
|
||||||
|
ipRouteParams = ''
|
||||||
|
addr=`${pkgs.iproute2}/bin/ip route | ${pkgs.gawk}/bin/awk '/default/ {print $3; exit}'`
|
||||||
|
interface=`${pkgs.iproute2}/bin/ip route | ${pkgs.gawk}/bin/awk '/default/ {print $5; exit}'`
|
||||||
|
'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.local.services.vpn.wireguard = with lib; {
|
options.local.services.vpn.wireguard = with lib; {
|
||||||
|
@ -45,18 +50,12 @@ in
|
||||||
# Path to the private key file.
|
# Path to the private key file.
|
||||||
privateKeyFile = cfg.privateKeyFile;
|
privateKeyFile = cfg.privateKeyFile;
|
||||||
|
|
||||||
postUp = ''
|
postUp = ipRouteParams + lib.concatLines (map
|
||||||
addr=`${pkgs.iproute2}/bin/ip route | ${pkgs.gawk}/bin/awk '/default/ {print $3; exit}'`
|
|
||||||
interface=`${pkgs.iproute2}/bin/ip route | ${pkgs.gawk}/bin/awk '/default/ {print $5; exit}'`
|
|
||||||
'' + lib.concatLines (map
|
|
||||||
(addr: "${pkgs.iproute2}/bin/ip route add ${addr} via $addr dev $interface || true")
|
(addr: "${pkgs.iproute2}/bin/ip route add ${addr} via $addr dev $interface || true")
|
||||||
addrsViaDefaultInterface
|
addrsViaDefaultInterface
|
||||||
);
|
);
|
||||||
|
|
||||||
preDown = ''
|
preDown = ipRouteParams + lib.concatLines (map
|
||||||
addr=`${pkgs.iproute2}/bin/ip route | ${pkgs.gawk}/bin/awk '/default/ {print $3; exit}'`
|
|
||||||
interface=`${pkgs.iproute2}/bin/ip route | ${pkgs.gawk}/bin/awk '/default/ {print $5; exit}'`
|
|
||||||
'' + lib.concatLines (map
|
|
||||||
(addr: "${pkgs.iproute2}/bin/ip route del ${addr} via $addr dev $interface || true")
|
(addr: "${pkgs.iproute2}/bin/ip route del ${addr} via $addr dev $interface || true")
|
||||||
addrsViaDefaultInterface
|
addrsViaDefaultInterface
|
||||||
);
|
);
|
||||||
|
|
Binary file not shown.
Loading…
Add table
Reference in a new issue