Vous pouvez faire beaucoup plus simple en utilisant le script /etc/ppp/ip-up.
Ce dernier est appelé automatiquement à l'établissement d'une connexion ppp (Point-to-Point Protocol).
J'utilise le client VPN PPTP du NAS pour me connecter à plusieurs LAN distants.
Dans mon cas, je voulais créer automatiquement les règles de routage pour me connecter à chacun des sous-réseaux distants, ce qui donne dans /etc/ppp/ip-up :
case ${IPREMOTE} in
10.0.0.0)
route add -net 192.168.0.0/26 dev ${IFNAME}
route add -net 192.168.0.64/26 dev ${IFNAME}
route add -net 192.168.0.128/26 dev ${IFNAME}
route add -net 192.168.0.192/26 dev ${IFNAME}
;;
esac
Le paramètre IFNAME est le nom de l'interface (pppx).
Le paramètre IPREMOTE est l'adresse privée du point distant correspondant à l'adresse P-t-P dans ifconfig :
ppp0 Link encap:Point-to-Point Protocol
inet addr:10.1.0.1 P-t-P:10.0.0.0 Mask:255.255.255.255
Ainsi, lorsqu'une interface ppp est montée, on peut exécuter des commandes en fonction de l'adresse IP de l'hôte distant.
Dans le cas d'un VPN anonyme, il suffit d'ajouter l'adresse IP de l'hôte distant (IPREMOTE) et d'y placer le règles iptables associées.