Так что на работе я использую соединение vpn, и после этого мне нужно вручную установить свою таблицу маршрутов, чтобы все работало, я пытаюсь написать скрипт bash, который будет легко различать мое домашнее соединение и мое рабочее соединение и установить правильный шлюз:
#!/bin/bash
# Does the ppp0 interface exist?
cat /proc/net/dev | grep ppp0 > /dev/null
ppp_check=$?
if [ $ppp_check -ne 0 ]; then
# I'm at home and you should set the ppp0 gateway
ip r c default via $(ifconfig ppp0 | awk -F "P-t-P:" '{print $2}' | awk -F " " '{print $1}' | tr "\n" " " | awk '{$1=$1};1')
else
# I'm at work so you should set my work gateway
ip r c default via 1.1.1.1
fi
ip r a 2.2.2.2/24 dev tun0
.
.
.
ip r a 10.10.10.10/24 dev tun0
Проблема в том, что скрипт всегда выполняет код для установки домашнего шлюза, даже когда я на работе, и первый оператор IF должен быть пропущен.
Есть идеи?