特定の接続のみ VPN 経由させる方法。「すべてのトラフィックを VPN 経由で接続」にチェックは不要。

ネットワークから VPN 接続構成を作成し、難なく VPN 接続はできたのだけど、サーバーにつながらない。原因は ネットワーク > 詳細 > オプション > セッションオプション の「すべてのトラフィックをVPN経由で接続」にチェックが入っていなかったから。

まぁここに到達するまで大変だったけども、無事にサーバーには接続できた。

できたのはいいけど、このままだと態々 VPN でファイルアップして、表示の確認するときは、VPN を切って確認するというあまりにも面倒なことになる。

 VPN の接続優先度を下げておき、特定のアドレスだけ VPN 接続できるように経路を追加する

  • VPN接続の優先度を普段の接続方法の優先度より下げておく(図1)
  • ネットワーク > 該当のVPN接続の詳細 > オプション > セッションオプション の「すべてのトラフィックをVPN経由で接続」のチェックを外す(図2)

2014-04-01_17_50_06_vpn_01
図1

2014-04-01_18_00_42_vpn_02
図2

と、下準備をした上で、VPN で接続。
そのあとターミナルから以下コマンドを実行。

$ sudo route add -net xxx.xxx.xxx.xxx -interface ppp0

または

$ sudo route add -host hoge.example.com -interface ppp0

interface 名の確認方法は、VPN 接続をした上で以下で確認できる。

$ ifconfig

で、ppp0 というのがあればそれ。(複数PPPoE接続のインターフェースがあった場合、0の数字が違う場合がある?)

この状態で、VPN 接続を維持しながら指定したサーバーへアクセスしつつ、ウェブサイトの閲覧などが出来るようになった!

ただ、VPN 接続を切るとコマンドで追加したルーティング設定は無くなるので、VPN の接続を確立させる度に、コマンドを実行する必要がある。

 シェルスクリプトによる自動化

も出来るらしいのだけれども、そこまではやってない。

※ Mac OS 10.9 Mavericks

東京都内で仕事をしています。猫飼いたいです。30歳からピアノ始めたおじさんです。盆栽にも興味が出てきました。
最近ブログ用のTwitterアカウントを作成したので、是非フォローをしてください。@zakkiboooks

 コメントをどうぞ

  • 入力いただいたメールアドレスは公開されませんが、このブログが置いてあるサーバーに保存されます。
  • 入力いただいた情報の他に、WordPress の機能により IPアドレス を取得させていただきます。取得した IPアドレス はスパムコメントの対処ために利用され、公開することはありません。
  • 個人情報などを記入された場合、投稿いただいたコメントを表示しないか、該当箇所を編集して公開する可能性があります。

内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。