Jak ręcznie dodać adres IP do mojego routingu?

1

Muszę dodać adres IP do mojego routingu. Jestem połączony z laboratorium z Openvpn. Moje trasy wyglądają teraz tak;

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref   Use Iface
0.0.0.0         192.168.178.1   0.0.0.0         UG    600    0     0   wlan0
192.168.178.0   0.0.0.0         255.255.255.0   U     600    0     0   wlan0
192.168.193.0   0.0.0.0         255.255.255.0   U     0      0     0   tap0

Muszę dodać (przykład) IP 20.20.20.0/24, aby móc odwiedzić serwer 20.20.20.8 za pośrednictwem tap0. Nie mogę tego uruchomić. Jak skonfigurować poprawną bramę i adres IP?

BButter10
źródło

Odpowiedzi:

1

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
Nierób
źródło
nie zapomnij, aby skrypt był wykonywalny i zawsze używaj pełnej ścieżki poleceń w skryptach. Nie „route”, ale „/ sbin / route” lub gdziekolwiek jest umieszczony na serwerze. użyj, whereis routeaby znaleźć pełną ścieżkę
Shirker
Spojrzałem na to, ale to nie ma dla mnie sensu. Próbowałem poleceń takich jak ip route add 20.20.20.0/24 przez xx.xx.xx.xx, ale nie mogę tego uruchomić
@ BButter10 nie zapomnij dev tap0o końcu route addpolecenia. Wystąpił błąd, czy po prostu cicho zawodzi? Zaktualizuj swoje pytanie o traceroute 20.20.20.8dane wyjściowe.
HashHazard
Dzięki Hollowproc. Nie rozumiem tylko, że muszę dodać adres IP za pośrednictwem bramy, która nie istnieje.
ip route add 20.20.20.0/24 via (GATEWAY) dev tap0