首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向kvm qemu桥添加物理以太网接口

向kvm qemu桥添加物理以太网接口
EN

Unix & Linux用户
提问于 2022-08-26 02:55:52
回答 1查看 2.7K关注 0票数 2

我正在跟踪这篇优秀的文章将使用桥接网络与libvirt和KVM.,但是我还缺少一些基本知识来完全理解/遵循它。

文章说,

  • 任何物理接口都不应该添加到virbr0桥中,因为它使用NAT来提供连接。
  • 当我们创建和启动虚拟机时,虚拟接口将添加到桥接器中。

最重要的是,

  • 当向网桥中添加物理以太网接口时,不能使用主以太网接口。
  • 因此,我们必须使用额外的接口。

我不太确定物理接口、虚拟接口、主接口和附加接口之间的关系,因此当文章说他使用的是一个额外的接口,enp0s29u1u1,以太网提供给usb适配器的接口。我完全不知道我应该为我的案例使用什么样的附加接口,这是一个普通的Debian,带有一个以太网卡。

请帮帮忙。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-08-26 03:32:50

“物理接口”指的是计算机上的实际网络设备--也就是可以插入以太网电缆或无线网络设备的东西。

“虚拟接口”是指与特定物理设备无关的网络接口:所以,vlan接口、网桥、tun/tap接口等等。

您的“主接口”是与您系统的主ip地址(和默认路由)相关联的网络接口。

在这种情况下,“附加接口”是除主接口之外的任何物理接口。

这两份声明..。

  • 任何物理接口都不应该添加到virbr0桥中,因为它使用NAT来提供连接。
  • 当我们创建和启动虚拟机时,虚拟接口将添加到桥接器中。

...are正确。virbr0桥与libvirt“默认”网络相关联,并使用NAT将虚拟机连接到外部世界;您不希望向该网桥添加物理接口。

当您启动虚拟机并将它们添加到桥接器时,Libvirt会创建tun/tap设备。

然而,下面的声明..。

  • 当向网桥中添加物理以太网接口时,不能使用主以太网接口。

...is稍微简化了一点。您可以使用主以太网接口作为桥接器的一部分,但是这个过程比使用辅助接口时要复杂一些(并且是意外地禁用internet连接的一个很好的方法)。总的来说,你需要:

  1. 创建一个桥接设备
  2. 将您的以太网接口添加到网桥上
  3. 使用以前与主接口相关联的ip地址配置桥接设备。

例如,在我的系统中,eth0如下所示:

代码语言:javascript
复制
# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:9b:a0:2a brd ff:ff:ff:ff:ff:ff
    altname enp1s0
    inet 192.168.122.64/24 brd 192.168.122.255 scope global dynamic noprefixroute eth0
       valid_lft 3570sec preferred_lft 3570sec
    inet6 fe80::d6:992e:d74a:c05a/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

这是我系统上唯一的物理接口。我们还需要知道我们的默认路径:

代码语言:javascript
复制
# ip route
default via 192.168.122.1 dev eth0 proto dhcp metric 100
192.168.122.0/24 dev eth0 proto kernel scope link src 192.168.122.64 metric 100

要将eth0添加到桥中,我首先要创建一个桥设备:

代码语言:javascript
复制
# ip link add br-example type bridge

然后将eth0添加到桥接器中,并从eth0中删除任何现有地址:

代码语言:javascript
复制
# ip link set eth0 master br-example
# ip addr flush eth0

将过去在eth0上的地址添加到br-example并恢复默认路由:

代码语言:javascript
复制
# ip addr add 192.168.122.64/24 dev br-example
# ip link set br-example up
# ip route add default via 192.168.122.1

在这一点上(a)我有一个桥br-example,(b) eth0是这个桥的成员,(c)我仍然有连接(通过brdige) out eth0。按照链接文章中的说明,我可以创建一个与br-example关联的libvirt网络,并开始将虚拟机附加到它;从网络的角度来看,这些机器看起来就像任何其他物理上连接到本地网络的设备。

当然,上面的过程不会导致持久的更改;这与发行版有什么不同,您所链接的那篇文章很好地概述了这个过程。

票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/714921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档