![如何使用从以太网克隆的 MAC 地址创建桥接接口?](https://linux22.com/image/1201787/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E4%BB%8E%E4%BB%A5%E5%A4%AA%E7%BD%91%E5%85%8B%E9%9A%86%E7%9A%84%20MAC%20%E5%9C%B0%E5%9D%80%E5%88%9B%E5%BB%BA%E6%A1%A5%E6%8E%A5%E6%8E%A5%E5%8F%A3%EF%BC%9F.png)
我为桥接网络创建了一个与其默认以太网端口匹配的网络计划:
network:
version: 2
renderer: NetworkManager
ethernets:
enp7s0:
match:
macaddress: "d8:5e:d3:04:3d:59"
dhcp4: false
dhcp6: false
bridges:
br0:
dhcp4: true
dhcp6: true
macaddress: "d8:5e:d3:04:3d:59"
interfaces:
- enp7s0
parameters:
forward-delay: 2
priority: 0
stp: true
routes:
- scope: "link"
to: "default"
虽然它可以工作,但问题是当我唤醒计算机时,需要一分钟才能建立网络。 有合适的方法吗?
答案1
首先尝试最简单的方法:自动暂停/恢复你的 netplan 中的参数。
autosuspend: 1
在以太网上,启用自动暂停。
resume: 1
指定桥接器应首先恢复。
或者:
您可以用networkd-dispatcher
它在接口之前初始化桥接网络。
创建新文件:
sudo nano /etc/networkd-dispatcher/dispatcher.d/bridge-pre-init.sh
将以下内容添加到文件中并保存。
#!/bin/bash
# Set up the bridge network before the interface is brought up
networkctl enable br0
networkctl start br0
将模式更改为可执行:
sudo chmod +x /etc/networkd-dispatcher/dispatcher.d/bridge-pre-init.sh
重启。
测试网络连接。
另外一个选择:设置静态 IPv4 地址并让 NetworkManager 管理网桥。
network:
version: 2
renderer: NetworkManager
ethernets:
enp7s0:
dhcp4: no
addresses: [192.168.1.2/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
bridges:
br0:
dhcp4: no
addresses: [192.168.1.3/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
interfaces:
- enp7s0
parameters:
forward-delay: 2
priority: 0
stp: true
这将设置静态 IPv4 地址192.168.1.2/24以及enp7s0
网关/DNS服务器。br0
配置为静态,192.168.1.3/24,(与 相同的网关/DNS enp7s0
)。
一定要检查 BIOS 中的“Wake-On LAN”设置。可能就这么简单。