有没有办法通过提供命令行选项来阻止 QEmu 向客户提供 IPv6 连接,qemu-system-*
同时仍保留 IPv4?
答案1
使用用户模式 NAT,您可以有选择地以任意组合启用 IPv4 和 IPv6。默认设置可能是同时启用两者,因此您必须明确告诉 QEMU 执行其他操作:
-netdev user,id=str[,ipv4[=on|off]][,net=addr[/mask]][,host=addr]
[,ipv6[=on|off]][,ipv6-net=addr[/int]][,ipv6-host=addr]
[,restrict=on|off][,hostname=host][,dhcpstart=addr]
所以基本上只要通过-netdev user,id=whatever,ipv6=off
就可以了。
如果您不使用用户模式 NAT,则必须使用 IPTables 或类似工具来阻止客户机实现 IPv6 连接。
答案2
Qemu
是虚拟硬件 - 因此在这个层面上没有 等概念IPv4
,IPv6
它只是一个 NIC。类似地,可以问是否可以在硬件层面上配置英特尔或 Broadcom NIC 以禁止IPv6
。
您可以做的是在主机上创建防火墙规则,阻止IPv6
数据包到达或离开 qemu 连接到的 vbridge,但请注意,这与其本身无关Qemu
。