2024-04-20 06:40:34 +02:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
set -x
|
2024-05-10 17:35:07 +02:00
|
|
|
# In my experience killswitch causes issues for NordVPN to restore connection
|
|
|
|
# and anyway it's enabled by scripts that I actually want to be connected to
|
|
|
|
# VPN.
|
2024-04-20 06:40:34 +02:00
|
|
|
nordvpn set killswitch off
|
2024-05-10 17:35:07 +02:00
|
|
|
# The aforementioned script will restore it.
|
2024-04-24 10:08:06 +02:00
|
|
|
nordvpn set autoconnect off
|
2024-05-10 17:35:07 +02:00
|
|
|
# Disconnects VPN
|
2024-04-20 06:40:34 +02:00
|
|
|
nordvpn disconnect
|
2024-05-10 17:35:07 +02:00
|
|
|
|
2024-07-30 06:46:36 +02:00
|
|
|
nordvpn set ipv6 on
|
|
|
|
nordvpn set notify on
|
|
|
|
nordvpn set lan-discovery on
|
|
|
|
|
2024-05-10 17:35:07 +02:00
|
|
|
# Explicitly restores IPv6 since NordVPN disables it by setting this to 1.
|
2024-05-10 17:17:37 +02:00
|
|
|
sudo sysctl net.ipv6.conf.all.disable_ipv6=0
|
2024-05-10 17:35:07 +02:00
|
|
|
|
2024-07-29 12:49:42 +02:00
|
|
|
# My scripts autostart them, I don't want NordVPN to haunt logs. However
|
|
|
|
# I have to change my mind since meshnet requires them.
|
|
|
|
#sudo systemctl stop nordvpnd.socket
|
|
|
|
#sudo systemctl stop nordvpnd.service
|
2024-05-10 17:35:07 +02:00
|
|
|
|
|
|
|
# Restarting networking ensures IPv6 connectivity will return.
|
2024-04-20 06:40:34 +02:00
|
|
|
sudo systemctl restart iwd.service
|
|
|
|
sudo systemctl restart systemd-networkd.service
|
2024-08-13 06:09:14 +02:00
|
|
|
sudo systemctl restart NetworkManager.service
|
2024-05-10 17:35:07 +02:00
|
|
|
|
|
|
|
# A bit of sleeping before flushing DNS caches, so we are surely connected
|
|
|
|
# for the new attempts. They are flushed in case of having private ECS aimed
|
|
|
|
# at the VPN.
|
2024-04-20 10:56:32 +02:00
|
|
|
sleep 5
|
2024-05-10 17:21:45 +02:00
|
|
|
#sudo systemctl restart unbound.service
|
2024-09-23 10:05:39 +02:00
|
|
|
if hash unbound-control 2> /dev/null; then
|
|
|
|
sudo unbound-control reload
|
|
|
|
fi
|
2024-05-10 17:21:45 +02:00
|
|
|
#sudo systemctl restart systemd-resolved.service
|
2024-09-23 10:05:39 +02:00
|
|
|
if hash resolvectl 2> /dev/null; then
|
|
|
|
sudo resolvectl flush-caches
|
|
|
|
fi
|
2024-05-10 17:31:26 +02:00
|
|
|
#sleep 5
|
2024-05-10 17:35:07 +02:00
|
|
|
|
|
|
|
# Yggdrasil needs IPv6
|
2024-04-27 11:20:05 +02:00
|
|
|
sudo systemctl restart yggdrasil.service
|
2024-05-10 17:35:07 +02:00
|
|
|
|
|
|
|
# The NTP server will now have access to IPv6 sources, possibly local NTP
|
|
|
|
# servers as well.
|
2024-09-23 10:05:39 +02:00
|
|
|
if hash chronyc 2> /dev/null; then
|
|
|
|
sudo chronyc online
|
|
|
|
fi
|
2024-05-10 17:35:07 +02:00
|
|
|
# Tor will complain of IP address change and failing guards during
|
|
|
|
# disconnection.
|
2024-04-27 11:18:52 +02:00
|
|
|
sudo systemctl restart tor.service
|
2024-05-10 17:35:07 +02:00
|
|
|
|
2024-04-20 06:40:34 +02:00
|
|
|
set +x
|