iptables - 如何与 QEMU 镜像共享主机的本地主机?

标签 iptables qemu portforwarding

想知道这样的事情是否可能:我有一个服务器在本地 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/

相关文章:

android-emulator - Android模拟器可写

process - 从 xv6 中的进程关闭 qemu

docker - 允许通过 vpnkit 出站容器网络

ip - 给 docker 容器一个可路由的 ip 地址

debugging - QEMU gdb 不显示固件说明

java - 什么是 STUN,它是否需要端口转发服务器?

node.js - 端口转发无法设置本地 Web 服务器

mysql - UFW 3306 端口转发在 RaspberryPi 2 上不起作用

linux - 2 iptables 规则我不明白

mongodb - IPTables 问题 : Can't connect to mongodb w/mongo shell - CentOS