我已經設定了一個網橋,用於將桌面上的 KVM 虛擬機連接到我的家庭網路;我透過建立橋接來手動完成此操作/etc/network/interfaces
(書中為獲得最佳網路效能而完成的方式,我們在我們公司的虛擬化伺服器上使用)。
然而,這意味著 NetworkManager 不再管理 eth0 接口,並且拒絕建立 VPN 連接。
如果我能找到一個應用程式來連接而不是 NM,那就不會太困擾我了。但是,唉,我什麼也沒找到!有一些名為 的軟體包kvpnc
,被描述為 VPN 用戶端的 GUI,但它一直崩潰。據我所知,沒有任何替代的可用 VPN GUI。
其他人也有類似的問題:橋接器 - 不破壞網路管理器 但那傢伙最終只是回到 NM 並設定路由而不是橋接器,而不是尋找替代的 VPN 用戶端。
有任何想法嗎?
編輯:忘記提及我目前正在使用 PPTP,將來可能需要 OpenVPN。
答案1
好吧,我就是這樣得到的大約問題:
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
to」/etc/ppp/peers/$connection-name
。
3. 手動啟動和停止連接
sudo pon your-connection
連接,並且
sudo poff your-connection
斷開連線。
4. 如果要自動新增和刪除自訂路由:
建立兩個腳本,如下所示:
(將它們放在您的主資料夾中的某個位置,如果您不忘記備份它,/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
它們必須由 root: 擁有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.sh
和的桌面啟動器gksudo /path/to/pptp-off.sh
。我用的是瑪麗安勒克斯-es建立啟動器可從 Ubuntu 軟體中心取得。谷歌一下如何做到這一點,我不打算在這裡寫這篇(因為我很懶)。
就是這樣。您可以擁有任意數量的不同連接,所有連接都可以透過啟動器輕鬆打開和關閉。只需為每個附加連接再次執行所有步驟即可。
但要注意,如前所述,這不是修復,而是解決方案。修復將在 NM 獲得對網橋的內建支援時進行,如果我沒看錯的話,這已經在 13.04 中完成了。這只適用於像我這樣計劃盡可能長時間保留 12.04 的人(我嘗試過 12.10,但遇到了很大的問題,例如與我的 ATI 顯示卡不相容、有很多錯誤等),或者至少要等到下一個LTS 版本或遷移到新/舊硬體為止。