web-dev-qa-db-ja.com

ネットワークブリッジを手動で設定してVPNを使用する方法(NetworkManagerによって管理されていないプライマリインターフェイスを使用)

KVMデスクトップ上の仮想マシンをホームネットワークに接続するために使用しているネットワークブリッジを設定しました。/etc/network/interfaces(最高のネットワークパフォーマンスを実現するために本が行った方法で、会社の仮想化サーバーで使用しています)。

ただし、これは、NetworkManagerがeth0インターフェースを管理しておらず、VPN接続のセットアップを拒否していることを意味します。

NMの代わりに接続するアプリを見つけることができれば、それほど気になりません。しかし、残念ながら、何も見つかりませんでした! VPNクライアント用のGUIとして記述されたkvpncと呼ばれるパッケージがありましたが、クラッシュし続けました。私が見る限り、VPN GUIを使用する代替手段はありませんでした。

他の人々は同様の問題を抱えています: ネットワークブリッジ-ネットワークマネージャーを破壊することなく しかし、その男はNMに戻り、代わりにブリッジの代わりにルーティングを設定することになりました代替VPNクライアントを見つける。

何か案は?

編集:PPTPを使用しているため、将来OpenVPNが必要になる可能性があることを言及するのを忘れました。

4
jjakob

さて、これは私がaround問題をどのように得たかです:

1。ネットワークマネージャーの削除

Sudo apt-get remove network-manager

注:免責事項については、この投稿の最後を読んでください

2。コマンドラインでpptpを設定します

必要なすべての構成ファイルをセットアップするpptpsetupという便利なツールを使用します。

実行:
Sudo pptpsetup --create $your-connection --server se.rv.er.ip --username $pptp-username --encrypt

置換:
-新しい接続の短い名前を持つ$ your-connection
-se.rv.er.ipと接続するサーバーのIP
-$ pptp-usernameと接続しているユーザーのユーザー名

最初にSudoパスワードを求められ、次にpptpsetupがPPTP接続のパスワードを求めます。それを入力し、Enterを押します。注意してください、混同しないでください。サーバーからプッシュされたデフォルトのルートを使用したくない場合は、nodefaultrouteという行を/etc/ppp/peers/$connection-nameに追加します。

3。接続を手動で開始および停止する

Sudo pon your-connection
接続し、

Sudo poff your-connection
切断します。

4。カスタムルートを自動的に追加および削除する場合:

次のような2つのスクリプトを作成します。
(ホームフォルダのどこかに配置します。バックアップすることを忘れないのであれば、/ rootも大丈夫です)

pptp-on.sh:

#!/bin/bash
# This script connects us using pre-configured PPTP VPN,
# and then adds all the routes we specify here.

pon your-connection
a=$?

sleep 5

# add routes
if [ $a == 0 ]; then
        # whatever routes you need
        route add -net 192.168.1.0 netmask 255.255.255.0 dev ppp0
        echo "Connected"
fi

exit $a

pptp-off.sh:

#!/bin/bash

poff your-connection

a=$?

# delete routes
if [ $a == 0 ]; then
        #specify whatever routes you have here
        route del -net 192.168.1.0 netmask 255.255.255.0 dev ppp0
        echo "Disconnected"
fi

exit $a

ルートが所有する必要があります:Sudo chown root:root pptp-on.sh pptp-off.sh。それらを実行可能にします:Sudo chmod +x pptp-on.sh pptp-off.sh
あなたに合った名前を付けてください。

5。デスクトップランチャーの作成

接続と切断のたびにスクリプトを手動で実行するのではなく、クリックするだけのデスクトップランチャーが必要でした。これを行うために、gksudo /path/to/pptp-on.shgksudo /path/to/pptp-off.shをそれぞれ実行する2つのデスクトップランチャーを作成しました。 Marian Lux-es Create Launcher を使用しました。Ubuntuのソフトウェアセンターから入手できます。 Googleでこれを行う方法については、ここでは書きません(私は怠け者だからです)。

それでおしまい。必要な数のさまざまな接続を使用でき、すべてランチャーで簡単にオン/オフできます。追加の接続ごとにすべての手順を再度実行してください。

ただし、前述のとおり、これは修正ではなく解決策です。修正は、NMがネットワークブリッジの組み込みサポートを取得するときです。これは、私が正しく読んだ場合、13.04で既に完了しています。これは、できる限り12.04を保持する(12.10を試しましたが、ATIグラフィックカードとの非互換性、多くのバグなど、大きな問題がありました)、または少なくとも次のLTSリリースまで、または新しい/ハードウェア。

4
jjakob