我正在尝试通过桥接适配器将 Ubuntu 18.04 客户机连接到 Kubuntu 18.04 主机笔记本电脑上的网络。但是,Ubuntu 客户机无法识别它。
我读过有关如何修改 netplan .yaml 文件的文章,但我不太清楚如何使用它来设置桥接网络。
到目前为止,yaml 文件如下所示:
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
# Added everything from here myself
ethernets:
enp1s0:
dhcp4: true
dhcp6: true
wifis:
wlp2s0:
dhcp4: true
dhcp6: true
bridges:
br0:
interfaces: [enp1s0, wlp2s0]
dhcp4: true
dhcp6: true
br1:
interfaces: [enp1s0]
dhcp4: true
dhcp6: true
我跑步时得到了这个# netplan generate
:
Error in network definition //etc/netplan/01-network-manager-all.yaml line 12 column 6: wlp2s0: No access points defined
我不确定我到底做错了什么。我是否应该列出接口正在使用的每个接入点?
我查看过几个网站:
答案1
我不熟悉 netplan,但大概这会为 NetworkManager 创建连接配置文件。
NetworkManager 中的 WiFi 连接配置文件必须始终指定 SSID。这意味着,您无法创建不与特定网络绑定的 WiFi 配置文件。这很合理 (??),因为配置文件本质上包含连接到 WiFi 网络所需的参数。由于这些参数通常在网络之间有所不同(开放网络除外),因此您需要每个网络都有一个配置文件。
在 NetworkManager 中,将设备绑定到网桥的属性(connextion.slave-type
和connection.master
)也是连接配置文件的一部分。
在 netplan 中,如果您指定 WiFi 网络,则它只能映射到 NetworkManager 可以理解的实体:配置文件。由于您未指定 SSID,因此它无法创建任何配置文件并会失败。
目前还不清楚 netplan 或 NetworkManager 在这里可以做得更好。
答案2
根据您发布的一个链接(https://netplan.io/examples#connecting-to-a-wpa-personal-wireless-network),您必须定义通过 WiFi 访问的网络的 SSID 和密码;请参阅此代码片段:
network:
version: 2
renderer: networkd
wifis:
wlp2s0b1:
dhcp4: no
dhcp6: no
addresses: [192.168.0.21/24]
gateway4: 192.168.0.1
nameservers:
addresses: [192.168.0.1, 8.8.8.8]
access-points:
"network_ssid_name":
password: "**********"
相关部分是“接入点”块。如果您的 SSID 是“MyNet”,密码是“S3cr3tPwd!”:
access-points:
"MyNet":
password: "S3cr3tPwd!"
答案3
我建议使用 KVM 而不是 Virtualbox。优点很多。我的虚拟机有一个 Netplan 桥接 VLAN。这是我的 YAML:
network:
version: 2
renderer: networkd
ethernets:
enp65s0f0:
dhcp4: false
dhcp6: false
enp65s0f1:
dhcp4: false
dhcp6: false
enp5s0:
dhcp4: true
dhcp6: true
enp0s31f6:
dhcp4: false
dhcp6: false
bonds:
bond-lan:
dhcp4: true
dhcp6: true
interfaces:
- enp65s0f0
- enp65s0f1
parameters:
mode: 802.3ad
bridges:
br0:
addresses: [ 10.0.1.1/24 ]
nameservers:
search: [local]
addresses: [10.0.0.3]
interfaces: [ enp5s0 ]
vlans:
vlan15:
accept-ra: no
id: 15
link: enp5s0
它有 4 个网卡,两个绑定在一起,一个用于我的虚拟机的桥接 VLAN。请小心使用 YAML 文件,它们对格式非常敏感。我很确定您的内核参数中还有一个防火墙选项,需要设置它才能不检查桥接流量。您还可以输入适当的规则。如果您使用 KVM,请安装 Virt-Manager 并在 VM 的首选项中将接口设置为 br0(至少在我的配置中)。