我正在运行 Ubuntu 18.04 并尝试与我的公司建立 VPN (L2TP/IPSec) 连接。必要的工具已经安装,并且我有一个包含正确访问数据的配置文件。
但是,如果我尝试使用以下命令激活 VPN
nmcli c up VPN
它因以下错误而退出:
Error: Connection activation failed: Could not find source connection.
如果我做一个
nmcli device status
我得到:
DEVICE TYPE STATE CONNECTION
br0 bridge connected br0
virbr0 bridge connected virbr0
eno1 ethernet connected eno1
lo loopback not managed --
virbr0-nic tun not managed --
编辑: 在 StackExchange 上,有类似问题,有两种可能的解决方案。两者都不适合我。让我解释:
第一个解决方案建议将 127.0.0.1 设置为默认路由。我这样做的唯一方法是设置 br0 的默认路由。但后来我失去了 IPv4 连接,直到下次重新启动。更改回默认路由不会使连接恢复在线状态。
第二个解决方案建议设置 netplan 配置。如果我这样做,我克服了 -Error Could not find source connection.
,但我也失去了完整的网络访问权限(直到下次重新启动)。
所以这些对我来说不是可行的解决方案。所以我希望有人能够帮助我。
谢谢。
编辑2: 显然,我误解了第一个提供的解决方案 - 默认路由。
ip r
给我以下输出:
default via 10.1.10.1 dev br0
10.1.0.0/16 dev br0 proto kernel scope link src 10.1.20.25
169.254.0.0/16 dev br0 scope link metric 1000
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
如果我理解正确的话,br0 是默认路由!?
netstat -rn
给我以下输出:
Kernel-IP-Routentabelle
Ziel Router Genmask Flags MSS Fenster irtt Iface
0.0.0.0 10.1.10.1 0.0.0.0 UG 0 0 0 br0
10.1.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
我的etc/network/interfaces
看起来像这样:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto br0
iface br0 inet dhcp
bridge_ports eno1
bridge_stp off
bridge_maxwait 0
bridge_fd 0
所以现在我不太确定该怎么办。据我了解,默认路由已设置并且
[ifupdown]
managed=true
已设置。那么,我还能做什么呢?我可以尝试摆脱那座桥,但我不知道这是否有帮助。
感谢您的任何建议。
答案1
好的,我现在开始工作了。
有帮助的是:摆脱 br0。我必须手动将其删除/etc/network/interfaces
。
我以为我的 kvm 机器需要这个,但事实证明:没有必要。
我/etc/network/interfaces
现在的样子是这样的:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo eno1
iface lo inet loopback
iface eno1 inet dhcp