我想连接 2 个分接设备。远程服务器上的分接设备由“用户”拥有。这是我的测试命令:
# ssh -oTunnel=ethernet -w0:0 user@server
但它不起作用,我收到此错误:
channel 0: open failed: administratively prohibited: open failed
在服务器上,tap-devices 是通过 opensuse 的某种机制创建的。配置文件为 /etc/sysconfig/network/ifcfg-tap[0-2]:
BOOTPROTO='static'
STARTMODE='auto'
TUNNEL='tap'
TUNNEL_SET_GROUP=''
TUNNEL_SET_OWNER='user'
和 /etc/sysconfig/network/ifcfg-br0:
BOOTPROTO='static'
BRIDGE='yes'
BRIDGE_FORWARDDELAY='0'
BRIDGE_PORTS='tap0 tap1 tap2'
BRIDGE_STP='off'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='192.168.1.103/24'
MTU=''
NAME=''
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
我该如何解决这个问题?
答案1
我不知道为什么,但这有效(感谢AB):
1.)删除/etc/sysconfig/network中的相关文件
2.) systemctl 重启网络
3.) 使用“ip”工具创建相同的设置:
ip tuntap add tap0 mode tap user user
ip tuntap add tap1 mode tap user user
ip tuntap add tap2 mode tap user user
ip link add name br0 type bridge
ip link set tap0 master br0
ip link set tap1 master br0
ip link set tap2 master br0
ip addr add dev br0 192.168.1.103/24
ip link set br0 up
ip link set tap0 up
ip link set tap1 up
ip link set tap2 up
当然,这只是一种解决方法。更好的答案是,仍然使用 openSUSE 提供的机制。