解决方案

在 Linux 主机服务器上,虚拟网络交换机显示为网络接口。
默认的在 libvirt 守护进程第一次安装和启动时创建,显示为 virbr0。
它将充当虚拟机路由流量的网关。
libvirtd 还将在 iptable 配置中插入 iptables 规则,以正确路由/定位 VM 数据包。

如果你不想使用 libvirtd 服务,你可以停止它,这将从系统中删除所有这些网络配置,用于 virbr0 接口。

lxcbr0 是当你使用包 lxc 安装和配置 lxc 容器时创建的虚拟网桥。
如果没有运行任何 lxc 容器,我们也可以删除此接口。

删除正在运行的机器上的 virbr0 接口(重新启动后的非持久性)

  1. 首先,使用以下命令列出系统上可用的虚拟网桥接口。
# brctl show
bridge name     bridge id               STP enabled     interfaces
virbr0          8000.5254003008b6       yes             virbr0-nic
  1. 拆除前将桥接接口关闭。
# ip link set virbr0 down
  1. 现在,移除桥接
# brctl delbr virbr0
  1. 检查桥接是否拆除
# brctl show
bridge name     bridge id               STP enabled     interfaces
如何在 CentOS/RHEL 6,7 上删除 virbr0 和 lxcbr0 接口

问题

机器上只有一张网卡,但 ifconfig 显示 virbr0 和 lxcbr0 名称的2个接口。
如果不使用它们,如何永久删除或者禁用它们。

# ifconfig
....
lxcbr0 Link encap:Ethernet HWaddr 82:61:68:AC:39:0F               

virbr0 Link encap:Ethernet HWaddr 52:54:00:80:A7:C3
之路教程 https://onitr oad .com

删除 virbr0 接口

案例 1:不使用 libvirtd 服务

如果不使用 libvirtd 服务,那么我们可以停止该服务。

对于 RHEL/CentOS 5,6

  1. 停止 libvirtd 服务。
# service libvirtd stop
  1. 永久禁用 libvirtd 服务,使其不会在启动时启动。
# chkconfig --list | grep libvirtd
# chkconfig libvirtd off

对于 RHEL/CentOS 7

  1. 检查服务状态并使用 systemctl 命令禁用 libvirtd 服务。
# /bin/systemctl stop libvirtd.service
# /bin/systemctl status libvirtd.service
● libvirtd.service - Virtualization daemon
  Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
  Active: inactive (dead) since Fri 2016-10-07 11:04:31 IST; 2s ago
  Docs: man:libvirtd(8)
  http://libvirt.org
  Process: 1275 ExecStart=/usr/sbin/libvirtd $LIBVIRTD_ARGS (code=exited, status=0/SUCCESS)
 Main PID: 1275 (code=exited, status=0/SUCCESS)
  1. 永久禁用该服务。
# /bin/systemctl disable libvirtd.service
Removed symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service.

案例 2:使用 libvirtd 并且不想要“virbr0”

在这种情况下,libvirtd 服务将继续运行,但我们将删除 virbr0 接口。
按照以下步骤删除 virbr0 接口。

  1. 列出虚拟机的默认网络设置
# virsh net-list
Name       State    Autostart    Persistent
---------------------------------------------------------
default    active   yes          yes
  1. 销毁默认网络。
# virsh net-destroy default
Network default destroyed
  1. 从配置中永久删除默认的虚拟网络。
# virsh net-undefine default
Network default has been undefined
  1. 接口 virbr0 现在消失了。
    我们可以在 ifconfig 或者 ip 命令输出中验证它。
# ifconfig virbr0
virbr0: error fetching interface information: Device not found

删除 lxcbr0 接口

lxcbr0 是当你使用包 lxc 安装和配置 lxc 容器时创建的虚拟网桥。
要删除 lxcbr0 接口,请按照以下步骤操作。

  1. 更改 /etc/sysconfig/lxc 中的以下行。
    这将在重新启动后生效。

USE_LXC_BRIDGE="true"

改成:

USE_LXC_BRIDGE="false"
  1. 我们可以删除正在运行的系统的lxcbr0桥接接口。
    但这在重新启动后将无效。
    因此需要先执行上述步骤。
    让我们首先列出桥接接口。
# brctl show
  1. 拆除前将桥接接口关闭
# ip link set lxcbr0 down
  1. 现在,使用“brctl delbr”命令移除网桥。
# brctl delbr lxcbr0
  1. 检查网桥是否拆除。
# brctl show
日期:2020-09-17 00:13:47 来源:oir作者:oir