15.8. 配置 passt 用户空间连接
如果您需要对虚拟网络的非特权访问,例如当使用 libvirt 的 会话 连接时,您可以将虚拟机(VM)配置为使用 passt 网络后端。
先决条件
passt软件包已安装在您的系统上。# dnf install passt
流程
打开您要在其上使用
passt连接的虚拟机的 XML 配置。例如:# virsh edit <testguest1>在
<devices>部分中,添加一个使用passt作为其后端类型的<interface type='user'>元素。例如,以下配置设置一个
passt连接,它使用从与第一个默认路由关联的主机接口复制的地址和路由:<devices> [...] <interface type='user'> <backend type='passt'/> </interface> </devices>另外,在使用
passt时,您可以指定多个<portForward>元素,来将主机的传入网络流量转发到此虚拟机接口。您还可以自定义接口 IP 地址。例如:<devices> [...] <interface type='user'> <backend type='passt'/> <mac address="52:54:00:98:d8:b7"/> <source dev='eth0'/> <ip family='ipv4' address='192.0.2.1' prefix='24'/> <ip family='ipv6' address='::ffff:c000:201'/> <portForward proto='tcp'> <range start='2022' to='22'/> </portForward> <portForward proto='udp' address='1.2.3.4'> <range start='5000' end='5020' to='6000'/> <range start='5010' end='5015' exclude='yes'/> </portForward> <portForward proto='tcp' address='2001:db8:ac10:fd01::1:10' dev='eth0'> <range start='8080'/> <range start='4433' to='3444'/> </portForward> </interface> </devices>这个示例配置建立了一个带有以下参数的
passt连接:-
虚拟机为转发来自
eth0主机接口的流量复制网络路由。 -
接口 MAC 设置为
52:54:00:98:d8:b7。如果未设置,将生成一个随机的。 -
IPv4 地址设为
192.0.2.1/24,IPv6 地址设为::ffff:c000:201。 -
主机上的 TCP 端口
2022将网络流量转发到虚拟机上的端口22。 -
主机接口
eth0上的 TCP 地址2001:db8:ac10:fd01::1:10和端口8080将其网络流量转发到虚拟机上的端口8080。端口4433转发到虚拟机上的端口3444。 -
主机上的 UDP 地址
1.2.3.4和端口5000 - 5009以及5016 - 5020将其网络流量转发到虚拟机上的端口6000 - 6009和6016 - 6020。
-
虚拟机为转发来自
- 保存 XML 配置。
验证
启动或重启使用
passt配置的虚拟机:# virsh reboot <vm-name> # virsh start <vm-name>如果虚拟机成功引导,则现在使用
passt网络后端。