Puoi inserire una configurazione extra in /etc/ppp/ip-up
file, che è descritta in man pppd
, e che è un file di script di shell standard che verrà generato quando pppd
stabilisce una connessione.
Non uso più la VPN e sfortunatamente sembra che non abbia più una copia del mio file ip-up
, ma il modo in cui lo facevo era qualcosa di simile al seguente (devi verificare questo con la pagina man di cui sopra).
Una volta che pppd stabilisce la connessione, chiamerà /etc/ppp/ip-up
con i seguenti argomenti:
ip-up interface-name tty-device speed local-IP-address remote-IP-address ipparam
Lo script ip-up
potrebbe quindi avere un aspetto simile a:
#!/bin/bash
IFNAME="${1}"
LOCALIP="${4}"
REMOTEIP="${5}"
if [[ "${REMOTEIP}" == "192.0.2.1" ]]; then
/sbin/route add -host lab_computer.foo -interface "${IFNAME}"
fi
Tieni presente quanto segue:
- Suppongo che l'indirizzo IP del gateway VPN a cui ti colleghi
è sempre lo stesso e non cambia mai, e nell'esempio sopra sono
supponendo che sia l'intervallo di indirizzi 192.0.2.1 ( RFC5737 specificato per l'uso
come esempi di documentazione - PER FAVORE CAMBIARLA). Il confronto qui
viene utilizzato per aggiungere il percorso solo quando sei connesso tramite VPN a
il tuo ufficio e nessuna altra connessione VPN o PPP.
- È anche meglio usare un indirizzo IP invece del nome host per
il computer a cui si desidera aggiungere una route statica. Invece di usare
lab_computer.foo
Vorrei utilizzare un indirizzo IP nel comando route
.
- Sto utilizzando
-interface ${IFNAME}
anziché hard coding
ppp0
, che dovrebbe funzionare anche se hai due VPN
connessioni stabilite contemporaneamente (o una VPN e un'altra forma
di PPP, ad es. un modem 3G)