VPNをつなぐと基本的にはすべての通信がVPN経由になってしまうので
当方的には、特定のIPへのアクセスのみをVPN経由にしたい
で、いつもどおり調べてみたらVPN接続をすると
/etc/ppp/ip-upシェルスクリプトファイルが呼び出されるんだとか
ということで、VPN先のローカルネットワークと、VPN先からしかIP制限で入れないサーバへのアクセスをppp0経由にすることにしてみた。
sudo vi /etc/ppp/ip-up
/etc/ppp/ip-up
#!/bin/sh
if [ "$1" = "ppp0" ]; then
date > /tmp/upppp0
/sbin/route add -net 192.168.xx.0/24 -interface ppp0
/sbin/route add -net xxx.xxx.xxx.xxx -interface ppp0
fi
sudo chmod 744 /etc/ppp/ip-up
と、設定してVPN接続してみると、date > /tmp/upppp0
が動いて/tmp/upppp0ファイルが作られているので、
if文の中は通っている様子。
(シェルスクリプトなので、こういうデバッグもできるね)
traceroute xxx.xxx.xxx.xxxをしたら、1番目にVPN先のルータのIPになっており、実際にxxx.xxx.xxx.xxxの接続も大丈夫だった。
これで、普段の通信はVPNを経由しなくて済みそうです。
ps.
よくよく考えたら自宅はRTX1200導入してるから、
ルーターでVPNを常に張りっぱなしにして、ルーティング書けは行けそうだなぁ・・
今度余裕があるときやってみよう