AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 678044
Accepted
lacrosse1991
lacrosse1991
Asked: 2015-03-25 18:01:07 +0800 CST2015-03-25 18:01:07 +0800 CST 2015-03-25 18:01:07 +0800 CST

如何为单个 KVM 虚拟机配置多个 Tap 接口

  • 772

我正在尝试使用 Linux KVM 为 F5 BIG-IP VE 部署设置 VM(在实验室中使用)https://support.f5.com/content/kb/en-us/products/big-ip_ltm/manuals/产品/bigip-ve-kvm-setup-11-3-0/_jcr_content/pdfAttach/download/file.res/BIG-IP®_Virtual_Edition_Setup_Guide_for_Linux_KVM.pdf。

此 VM 需要 3 个不同的网络接口(管理、外部连接和内部连接)

我一直在尝试使用以下配置在 /etc/network/interfaces 中设置这些连接:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
# This is an autoconfigured IPv6 interface
iface eth0 inet6 auto

auto br0
iface br0 inet dhcp
   pre-up ip tuntap add dev tap0 mode tap user root
   pre-up ip tuntap add dev tap1 mode tap user root
   pre-up ip tuntap add dev tap2 mode tap user root
   pre-up ip link set tap0 up
   pre-up ip link set tap1 up
   pre-up ip link set tap2 up
   bridge_ports all tap0 tap1 tap2
   bridge_stp off
   bridge_maxwait 0
   bridge_fd      0
   post-down ip link set tap0 down
   post-down ip link set tap1 down
   post-down ip link set tap2 down
   post-down ip tuntap del dev tap0 mode tap
   post-down ip tuntap del dev tap1 mode tap
   post-down ip tuntap del dev tap2 mode tap

尽管每当我去配置虚拟机时,只有一个分接头接口会显示为与网桥相关联。我花了 4-5 个小时试图让这些接口正常工作,但没有任何运气。我在这里做错了什么?

在此处输入图像描述

linux
  • 2 2 个回答
  • 4886 Views

2 个回答

  • Voted
  1. Best Answer
    dyasny
    2015-03-26T16:24:47+08:002015-03-26T16:24:47+08:00

    您需要在主机上设置的只是网桥。当您配置虚拟 NIC 并将它们附加到 VM 时,将在 VM 启动时自动创建分流器。

    现在,在不阅读实际指南的情况下,看起来您需要三个不同网络上的三个接口。如果您将所有虚拟 NIC 插入同一个网桥(实际上是一个虚拟交换机),它们最终都会在同一个 L2 网络上。当然,您可以通过简单的子网划分,但如果您想使用 VLAN,则需要在每个带有 VLAN 标记的接口上创建一个单独的网桥,并相应地插入虚拟 NIC

    • 1
  2. Spooler
    2017-03-11T21:42:59+08:002017-03-11T21:42:59+08:00

    Dyasny 的回答是正确的,但根据您希望如何在管理程序上设计网络堆栈,遗漏了可能有用的信息。网桥本身支持带有子接口的 VLAN 标记(例如 br0.10 用于网桥 0 上的 VLAN 10)。这样,您可以从网桥生成子接口,而不是将网桥绑定到单独的以太网设备子接口。如果您在主机上使用公共结构之外的许多 VLAN 进行操作,这可以大大简化您的网络堆栈。

    这些 VLAN 标记的子接口可以直接使用,方法是将它们用作给定 VM NIC 配置(例如 br0.10)中的主机设备。以这种方式使用时,VM 将在该给定 VLAN 上与其虚拟以太网设备进行通信,就好像它是本机一样。没有标记将在来宾中起作用。如果您需要更多 VLAN,则必须模拟更多 NIC,而这些 NIC 仍然可以是来自同一网桥的子接口。如果您已经使用过子接口,它们不能是桥根 (br0)。

    或者,通过使用网桥“根”接口(例如 br0)连接 VM TAP 接口,VM 本身可以访问网桥上的本机 VLAN,也可以创建标记接口,这些接口在来宾内部就像一个将与主机。这可以允许仅使用一个虚拟 NIC 在来宾中访问多个 VLAN,从而简化访问多个 VLAN 的机器的部署。VM 将只能标记在主机桥上也已标记的 VLAN。通过这种方式,主机桥充当 VLAN 数据库和 ACL,就像典型的交换机一样。

    甚至除此之外,Open vSwitch 也可以使用更好的界面执行相同的活动。

    示例配置:

    我将忽略桥接下方的所有内容以及大多数桥接选项,因为它们在第 2 层讨论中并不是非常有用。下面是一个在主机桥上使用标记的子接口来提供 VLAN ACL 集的示例,同时使用主机桥本身来连接您的分路接口。

    $> cat /etc/sysconfig/network-scripts/ifcfg-br0
    
    DEVICE=br0
    TYPE=Bridge
    ONBOOT=yes
    BOOTPROTO=none
    NM_CONTROLLED=no
    DELAY=0
    

    -

    $> cat /etc/sysconfig/network-scripts/ifcfg-br0.10
    
    DEVICE=br0.10
    TYPE=Bridge
    ONBOOT=yes
    BOOTPROTO=none
    VLAN=yes
    

    一旦你完成了所有这些(或类似的事情),使用br0你的接口来连接你的 VM TAP 接口,你现在可以在 VM 本身内为 VLAN 10 创建一个标记接口。网桥可以处理 VLAN,也可以充当VLAN 中继。

    • 0

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve