如何在 Ubuntu 中配置网桥
Linux 支持软件网桥的实现,以再现网桥的功能,网桥是一种将两个或多个通信网络或网段互连的网络设备,为它们提供了作为单个网络工作的方式。它的作用几乎就像一个网络交换机,从软件意义上来说,它用于实现“虚拟网络交换机”的概念。
软件网络桥接的典型用例是在虚拟化环境中将虚拟机 (VM) 直接连接到主机服务器网络。这样,虚拟机就可以部署在与主机相同的子网上,并且可以访问 DHCP 等服务。
在本文中,您将学习在 Ubuntu 中设置网桥的不同方法,并在虚拟化环境中使用它在 VirtualBox 和 KVM 下以桥接模式创建虚拟网络,将虚拟机连接到与主机相同的网络。
在本页面:
- 如何在 Ubuntu 中安装网桥实用程序
- 如何使用 NetPlan 创建网桥
- 如何使用 Nmcli 创建网桥
- 如何使用 nm-connection-editor 工具创建网桥
- 如何在虚拟化软件中使用网桥
在 Ubuntu 中安装网桥实用程序
首先安装 bridge-utils 软件包,其中包含使用 apt 软件包管理器配置 Ubuntu 以太网桥的实用程序,如图所示。
apt-get install bridge-utils
接下来,使用 IP 命令识别以太网设备的接口名称,如下所示。
ip ad
OR
ip add
在 Ubuntu 中使用 NetPlan 创建网桥
Netplan 是一个简单易用的前端实用程序,用于使用 YAML 格式在 Linux 中配置网络。它目前支持 NetworkManager 和 systemd-netword 作为后端工具。
要为网桥等接口配置网络,请编辑/etc/netplan/目录中的netplan配置文件。
以下是一个示例配置文件,其中渲染器是默认的systemd-netword(将enp1s0替换为您的以太网接口名称)。
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
dhcp4: no
bridges:
br0:
dhcp4: yes
interfaces:
- enp1s0
通过运行以下命令保存配置文件并应用配置以启用桥接网络。
sudo netplan apply
然后使用brctl命令显示系统上的所有网桥。在这种情况下,以太网接口会自动作为端口添加到网桥。
sudo brctl show
如果要关闭或停用创建的网桥,请使用以下命令将其删除。
sudo ip link set enp1s0 up
sudo ip link set br0 down
sudo brctl delbr br0
OR
sudo nmcli conn up Wired\ connection\ 1
sudo nmcli conn down br0
sudo nmcli conn del br0
sudo nmcli conn del bridge-br0
在 Ubuntu 中使用 Nmcli 创建网桥
nmcli 是一种广泛使用的网络管理器命令行工具,用于管理 NetworkManager(创建、显示、编辑、删除、激活和停用网络连接)并显示网络设备状态。
要使用 nmcli 创建网桥,请运行以下命令。
sudo nmcli conn add type bridge con-name br0 ifname br0
然后将以太网接口添加为网桥中的端口,如图所示(请记住将enp1s0
替换为您的设备名称)。
sudo nmcli conn add type ethernet slave-type bridge con-name bridge-br0 ifname enp1s0 master br0
接下来,通过显示所有网络连接来确认桥已创建。
sudo nmcli conn show --active
接下来,按如下方式激活桥连接(您可以使用连接/接口名称或UUID)。
sudo nmcli conn up br0
OR
sudo nmcli conn up e7385b2d-0e93-4a8e-b9a0-5793e5a1fda3
然后停用以太网接口或连接。
sudo nmcli conn down Ethernet\ connection\ 1
OR
sudo nmcli conn down 525284a9-60d9-4396-a1c1-a37914d43eff
现在尝试再次查看活动连接,以太网接口现在应该是网桥连接中的从属接口,如以下屏幕截图所示。
sudo nmcli conn show --active
使用 nm-connection-editor 工具创建网桥
要打开 nm-connection-editor 应用程序,请从终端运行以下命令。
nm-connection-editor
在网络连接编辑器窗口中,单击+
符号添加新的连接配置文件。
接下来,从下拉列表中选择连接类型桥,然后单击创建。
接下来,设置桥连接名称和接口名称。
然后单击添加按钮添加桥接从端口,即以太网接口,如下图所示。选择以太网作为连接类型,然后单击创建。
接下来,根据您的喜好设置连接名称,然后单击保存。
在桥接连接下,现在应该会出现新连接。
现在,如果您再次打开网络连接编辑器,新的桥接接口和从属接口应该存在,如下图所示。
接下来,使用 nmcli 命令激活桥接接口并停用以太网接口。
sudo nmcli conn up br0
sudo nmcli conn down Ethernet\ connection\ 1
如何在虚拟化软件中使用网桥
设置网桥(虚拟网络交换机)后,您可以在Oracle VirtualBox和KVM等虚拟化环境中使用它来连接虚拟机到主机网络。
在 Oracle VirtualBox 中使用网桥
打开VirtualBox,然后从VM列表中选择一个VM,然后单击其设置。从设置窗口中,转到网络选项并选择适配器(例如适配器1)。
然后勾选启用网络适配器选项,将附加字段的值设置为桥接适配器,然后设置桥接接口的名称 (例如 br0),如以下屏幕截图所示。然后单击“确定”。
在 KVM 中使用网桥
您可以在创建新虚拟机时使用 virt-install< 添加 --network=bridge=br0
选项,在 KVM 下使用新网桥/strong> 命令。
virt-install --virt-type=kvm --name Ubuntu18.04 --ram 1536 --vcpus=4 --os-variant=ubuntu18.04 --cdrom=/path/to/install.iso --network=bridge=br0,model=virtio --graphics vnc --disk path=/var/lib/libvirt/images/ubuntu18.04.qcow2,size=20,bus=virtio,format=qcow2
从 Web 控制台,它将自动选择。此外,您还可以使用virsh命令行工具和虚拟机的XML配置文件来配置网桥。
有关更多详细信息,请阅读 netplan 和 nmcli 手册页(通过运行 man netplan
和 man nmcli
)作为libvirt中的虚拟网络和VirtualBox中的虚拟网络。您可以通过下面的评论部分向我们提出任何疑问。