将 dpdk 创建的 TAP 的输出馈送到 QEMU 虚拟网络接口

将 dpdk 创建的 TAP 的输出馈送到 QEMU 虚拟网络接口

我有这个 DPDK 命令行:

sudo dpdk-testpmd -l 0-3 -n 4 \
    --vdev 'net_pcap0,rx_pcap=/path/to/input.pcap' \
    --vdev 'net_tap0,mac=fixed' -- -i --no-flush-rx

这在主机内有效,如下所示:

$ tcpdump -D
...
5.dtap0 [Up, Running, Connected]
...
$ tcpdump -i 5
# Other terminal
testpmd> start

预期数据从文件转储到dtap0.

使用 QEMU,我使用以下设置将新的 NIC 添加到 Ubuntu 20.04 的实例:

在此输入图像描述

请注意,IP 地址未知,我认为这是问题的原因。我如何获得分配的IP?

在虚拟机中我得到这个:

$ tcpdump -D
...
7.enp7s0 [none]

更新:

我忘了在虚拟机中提到这一点,但它仍然不起作用:

$ sudo ifconfig enp7s0 up
$ tcpdump -D
...
2.enp7s0 [Up, Running]

我还注意到虚拟机中有 IPv6 地址,但没有 IPv4 地址。主机VM中的TAP端口也只有一个IPv6地址。

相关内容