macで特定のアドレスにのみVPNを使う

EC2とかでシェルの作業をおこなっていると調子の悪いときがでたときにVPNを貼ってそっちからやるようにしています。
普通VPNを使うときは全てのパケットをVPN経由にしますが、これをやるとIP制限のかかっているサーバーにアクセスできなくなるので若干不便です。

そのため特定IPに対してのみVPNを貼れるようにします。

まずVPNを貼って ifconfig を実行すると

ppp0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1280
    inet 192.168.xxx.yyy --> 192.168.xxx.zzz netmask 0xffffff00 

こんなものが追加されているのを確認します。

EC2の接続先のVPCのアドレス帯が172.30.2.0 – 254の場合
以下のようにルーティングを追加します。

sudo route add -net 172.30.2.0/24 192.168.xxx.zzz

ルーティングを確認します

netstat -rn
172.30.2/24        192.168.xxx.zzz    UGSc            1        0    ppp0

が追加されているはずです。
これでEC2のローカルアドレスに直接アクセスすることができます。

削除するには

sudo route delete -net 172.30.2.0/24

です。