Linux

在 Fedora 17 中通過命令行在網路配置之間切換

  • June 28, 2013

我在工作筆記型電腦上使用了兩種不同的設置;一個可以通過乙太網 ssh 隧道與我在本地網路上的工作電腦進行協同,另一個可以從網路外部打開到我的工作電腦的 HTTP 隧道。

當我在工作中啟用 wifi 時,我的筆記型電腦似乎會優先使用它。這使得協同作用執行得非常緩慢。在家裡我必須使用wifi。

我有腳本可以啟動我的 ssh 隧道、添加我的 ssh 密鑰並啟動其他程序(如 synergy),並在我關閉筆記型電腦時自行關閉。然而,每天我都必須通過打開我的 gnome-control-center 並打開我的乙太網來開始我的日常工作。

我嘗試了路由添加和 ifup,但都不起作用,所以我深入研究了 gnome-control-center 的原始碼,發現它通過 libnm 的方法 nm_client_activate_connection 啟用了連接,其中包含一些我無法追踪的 libnm 特定結構。我不是一個交流程序員,我對 GTK 或 libnm 都不熟悉。

有人知道fedora 17 對乙太網連接做了什麼來完全啟用它們嗎?或者有人知道 libnm 做了什麼來完全啟用乙太網連接嗎?我是否必須編寫 ac 腳本來執行 libnm 才能完全模擬 gnome-control-center 嘗試做的任何事情?

Fedora 17 包含一個 cli 工具 nmcli。http://arstechnica.com/civis/viewtopic.php?t=1163023

我可以打開乙太網nmcli con up 'System p5p1'並關閉wifinmcli con down id 'MyWifiNetworkName'

我不會使用 libnm 來控制它。NetworkManager 通過D-Bus發布對象,所以我會考慮使用dbus-send(或者可能是用Python編寫的腳本)來操作它

引用自:https://serverfault.com/questions/519151