Spójrz tutaj:
https://askubuntu.com/questions/612840/adding-route-on-client-using-openvpn
D) Opcja bonusowa! openvpn ma również dyrektywę góra / dół, która pozwala na uruchomienie skryptu podczas łączenia się z VPN, dzięki czemu możesz zrobić wszystko, co naprawdę chcesz. ustawianie dns, tras itp. Wymaga to jednak przechowywania poleceń w innym pliku.
Więc jeśli masz następujące pliki konfiguracyjne klienta openvpn
bezpieczeństwo skryptów 2
up run-stuff-after-vpn-connect.sh
utwórz plik o nazwie run-stuff-after-vpn-connect.sh (upewnij się, że ma uprawnienia do wykonywania. I dodaj:
/ bin / sh
route add -net 172.16.0.0/24 dev tun0 doda trasę, gdy tylko tunel się uruchomi
Więc w zasadzie umieszczasz swoją trasę do pliku sh, na przykład my_route.sh (zakładam, że 192.168.193.1 jest twoim lokalnym adresem IP OpenVPN GW)
#!/bin/sh
/usr/sbin/ip route add 20.20.20.0/24 via 192.168.193.1 dev tap0
następnie dodaj do pliku konfiguracyjnego klienta OpenVPN
up /your path to/my_route.sh
To może nie działać, więc możesz także dodać trasę poprzez systemd konfiguracji startowej
[Unit]
Description=OpenVPN connection to %i
[Service]
Type=forking
ExecStart=/usr/bin/openvpn --cd /etc/openvpn --config /etc/openvpn/%i.conf --daemon openvpn@%i
ExecStartPost=/your path to/my-add-route.sh
ExecStop=/your path to/my-remove-route.sh
[Install]
WantedBy=multi-user.target
whereis route
aby znaleźć pełną ścieżkędev tap0
o końcuroute add
polecenia. Wystąpił błąd, czy po prostu cicho zawodzi? Zaktualizuj swoje pytanie otraceroute 20.20.20.8
dane wyjściowe.