想知道这样的事情是否可能:我有一个服务器在本地 PC 的 localhost:1889 上监听,并且我的 QEMU 镜像能够使用相同的端口和 IP 访问该服务器 - 本地主机:1889
。
确实正在寻找以下解决方案之一:-
- 启用此功能的 QEMU 标志。这就是我当前的命令:
qemu-system-aarch64 -nographic -machine virt,gic-version=max -m 2058M -cpu cortex-a57 \
-netdev user,id=net0,net=192.168.76.0/24 \
-device virtio-net-pci,netdev=net0 \
-drive file=ubuntu-image.img,if=none,id=drive0,cache=writeback \
-device virtio-blk,drive=drive0,bootindex=0 \
-drive file=flash0.img,format=raw,if=pflash -drive file=flash1.img,format=raw,if=pflash
- 一系列 iptables - 但可以避免它。
最佳答案
运行“用户模式”网络的 QEMU 镜像(如命令行示例中所示)已经可以访问主机。它可以通过主机拥有的任何(非环回)IP 地址或使用特殊的“网关”IP 地址来访问它。如果您使用默认的 10.0.2.0/24 网络设置,则“网关”为 10.0.2.2。我尚未确认,但怀疑对于非默认网络设置,它仍将位于 .2,因此在本例中为 192.168.76.2。
您不能从字面上使 guest 中的“localhost”指向主机 PC,因为 guest 的“localhost”就是 guest 本身,将其指向其他位置可能会混淆 guest 中运行的软件。
关于iptables - 如何与 QEMU 镜像共享主机的本地主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67520919/