Używam Juniper Networks (program Java, który nawiązuje połączenie VPN).
Czy istnieje polecenie wiersza poleceń, które pozwala mi sprawdzić, czy jestem zalogowany w Juniper?
źródło
Używam Juniper Networks (program Java, który nawiązuje połączenie VPN).
Czy istnieje polecenie wiersza poleceń, które pozwala mi sprawdzić, czy jestem zalogowany w Juniper?
Jeśli biegniesz ifconfig -a
lub ip link show
powinieneś zobaczyć coś takiego jak tunX
poniżej, które jest urządzeniem tun używanym przez większość VPN opartych na trasach:
# tun device
# used by route-based VPN
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr: P-t-P: Mask:
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1300 Metric:1
RX packets:10 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:1435 (1.4 KB) TX bytes:1677 (1.6 KB)
# Jan 2020 refresh
# sample ifconfig output with 3 virtual interfaces
# for route-based VPN or overlay network
nebula1: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1300
inet 172.16.87.100 netmask 255.255.255.0 destination 172.16.87.100
inet6 fe80::b2c4:4360:a3ae:15aa prefixlen 64 scopeid 0x20<link>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 500 (UNSPEC)
RX packets 37 bytes 2980 (2.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 331 bytes 17408 (17.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet 172.16.200.1 netmask 255.255.255.0 destination 172.16.200.1
inet6 fe80::9d2e:5979:5ac2:43df prefixlen 64 scopeid 0x20<link>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 100 (UNSPEC)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1677 bytes 80496 (80.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wg0: flags=209<UP,POINTOPOINT,RUNNING,NOARP> mtu 1420
inet 172.16.111.100 netmask 255.255.255.0 destination 172.16.111.100
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1000 (UNSPEC)
RX packets 37337578 bytes 10884991930 (10.8 GB)
RX errors 0 dropped 67878 overruns 0 frame 0
TX packets 60202096 bytes 66040772964 (66.0 GB)
TX errors 169 dropped 44429 overruns 0 carrier 0 collisions 0
ip link
wynik
5: wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/none
6: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 100
link/none
11: nebula1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1300 qdisc fq_codel state UNKNOWN mode DEFAULT group default qlen 500
link/none
Lub jeśli używasz IPsec (np. StrongSwan), ifconfig -a
pokaże urządzenie tunelowe (tunX) jak poniżej, jeśli używasz trybu opartego na trasie (domyślnie jest oparty na zasadach):
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.11.2 P-t-P:192.168.11.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Jeśli strongSwan korzysta z routingu opartego na zasadach (domyślnie), będziesz w stanie dowiedzieć się, manipulując tabelą routingu jądra lub patrząc na ip-xfrm
strukturę IP do przekształcania pakietów (szyfrowanie ładunków).
# manipulate kernel routing table for more info
ip r
route -nr
ip r show table main
ip r show table local
# strongswan specific table id 220
ip r show table 220
Ponadto możesz użyć, ip tuntap show
aby sprawdzić, czy istnieją urządzenia tun / tap, aby ustalić, czy VPN jest w użyciu.
ip tuntap show
tun0: tun
ifconfig tun0 &> /dev/null && echo -e "\033[1;32m" "-- VPN is active --" "\033[0m"
Możesz również sprawdzić swoje trasy za pomocą
route
polecenia. Zobaczysz więcej tras jak zwykle i do różnych miejsc docelowych.Przykład
Połączone bez jałowca:
Połączone z Juniper:
źródło
Korzystanie z
ncdiag
poleceń jałowca da ci te informacje.ncdiag -t
do testu tunelowego.ncdiag -h
dla informacji o hoście.Więcej szczegółów:
+ ================================================= ============================= +
źródło
W moim przypadku urządzenie to
cscotun0
(korzystam z Cisco Anyconect Secure Mobility Client), a nietun0
.Dlatego (na podstawie odpowiedzi Terry'ego Wanga i komentarza zipizap), jeśli nie znasz nazwy urządzenia, możesz użyć:
lub jeśli znasz nazwę urządzenia:
UPD W systemie Ubuntu 18.04 potrzebuję:
Niestety,
ifconfig vpn0
teraz zwraca 0 (sukces), nawet jeśli VPN nie działa.źródło
Alternatywne rozwiązanie (Gnome)
Sprawdź, kiedy działa
Sprawdź, kiedy nie działa
dzięki czemu możesz sprawdzić UP , RUNNING poprzez grep, jak pokazano poniżej
Używam fantastycznej wtyczki powłoki argo gnome, a powyższe jest częścią mojego skryptu, więc mogę uruchomić VPN z paska narzędzi (lub go wyłączyć)
źródło