Linux

出於某種原因“sudo ssh -w any -o Tunnel=ethernet root@remote”創建 tun 設備而不是 tap 設備

  • September 7, 2018

要將多個隧道端點連接到一個公共網橋介面,我必須通過 ssh 創建一個第 2 層隧道。伺服器是 Ubuntu 10.04,客戶端是 Ubuntu 14.04。我已啟用

PermitTunnel yes
PermitRootLogin yes

在伺服器 /etc/sshd_config 中。當我連接時,sudo ssh -w any:any -o "Tunnel=ethernet" root@remote我得到一個 tun 設備而不是預期的 tap 設備。如果我在伺服器上將PermitTunnel yes“”更改為“ PermitTunnel ethernet”,我會收到“通道 0:打開失敗:管理禁止:打開失敗”錯誤消息,並且根本沒有隧道設備。

我很茫然,因為我很肯定這在過去的某個時候可以工作(使用不同的機器,可能是 Linux 版本)。

我也有同樣的問題。根據我的測試,它與伺服器無關,而是與客戶端有關。由於本地網路配置,要麼 ssh 建構和配置。

我已經能夠在我的筆記型電腦和我的所有設備之間創建一個 tap 介面,但是當我嘗試在設備之間建立隧道時,只創建了 tun 介面。

$$ edit $$ 解決方法是將“-o”放在“-w”之前,如下所示:

ssh -o Tunnel=ethernet -w any:any root@remote

代替 :

ssh -w any:any -o Tunnel=ethernet root@remote

我自己嘗試過,它有效,這是來源:https ://bugs.launchpad.net/ubuntu/+source/openssh/+bug/1316017

引用自:https://unix.stackexchange.com/questions/268690