web-dev-qa-db-ja.com

Mountain Lionのデフォルトゲートウェイを介して、いくつかのIP範囲を除くすべてのトラフィックをルーティングします

デフォルトのMountainLionネットワーク設定でVPN(Cisco IPSec)を使用しています。 Lion(およびi Snow Leopard)では、ルーティングをすべてのトラフィックにデフォルトゲートウェイを使用するように戻すために次のことを行い、VPNを通過する必要のある特定のIP範囲にいくつかのルートを設定しました。

# Route traffic through VPN:
route -nv add -net IPRANGE -interface utun0
#...more lines for the different IP-ranges that should go through VPN)

# Route all other traffic through the old default gateway:
route change default DEFAULT-GATEWAY-IP

これはMountainLionでは機能しないようです。 Cisco IPSecの(新しい実装?)は、ブラウザでアクセスすると、ルーティングテーブルに多くのルートを動的に追加するようです。

私はこれをたくさんデバッグしましたが(ping、traceroute'ing)、まだ解決策が見つかりません。

私が解決しようとしている基本的な問題は、VPNを介して特定のIP範囲のトラフィックをルーティングすることです。他のすべてはVPNに接続されていないため、動作するはずです。それを達成する他のソリューションは問題ありません私と一緒に=)

VPN設定パネル(システム環境設定、VPN項目、詳細設定)で、すべてのトラフィックをVPN経由でルーティングしないように指定した場合、VPNに接続した後、ルートは変更されません。次に、VPNの内部にある必要な特定のものだけのルートを取得するには、次のファイルを作成する必要があります。

/ etc/ppp/ip-up

含む

#!/bin/bash
/sbin/route add -net 10.10.10 -interface ppp0

ここで、「10.10.10」は、内部にいる場所のサブネットに対応します。上記は、サブネットが255.255.255.0である10.10.10/24ネットワークにアクセスしたい場合に機能します。サブネットが255.255.0.0の場合、代わりに「10.10」に置き換えます。

ファイルを作成したら、VPN接続後に実行されるようにファイルのアクセス許可を設定します。

chmod 755 /etc/ppp/ip-up 

接続する必要のあるVPNが複数あり、それぞれに異なるルートを追加する必要がある場合は、何を言うべきかわかりません。ただし、これは1つのVPNでのみ機能します。

2
Allen