我有 2 台虚拟机 Debian 9.4:其中一台通过 VirtualBox 运行;另一个通过 QEMU 工作。我在我的工作站上配置了一个桥,如下所示:
ip tuntap add dev tap0 mode tap group 1000
ip link set dev tap0 up promisc on
ip addr add 0.0.0.0 dev tap0
#Creating bridge br0
ip link add br0 type bridge
ip link set br0 up
ip link set tap0 master br0
echo "0" | tee --append /sys/class/net/br0/bridge/stp_state
ip addr add 192.168.2.1/24 dev br0
sysctl net.ipv4.conf.tap0.proxy_arp=1
sysctl net.ipv4.conf.enp6s0.proxy_arp=1
sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o enp6s0 -j MASQUERADE
iptables -A FORWARD -i br0 -o enp6s0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i enp6s0 -o br0 -j ACCEPT
在 VirtualBox 网络配置面板中,我将 tap0 作为网桥。 VM 可以在 WEB 上运行,更新系统,接收与 ssh 的连接以及我期望的平均操作,安装不带 PB 的 npm 包作为示例:npm install color
我使用以下命令启动的 QEMU 虚拟机出现问题:
qemu-system-x86_64 -hda Debian9_amd64_stretch_fr.qcow2 -m 1024 -device e1000,netdev=network0,mac=52:55:00:d1:55:01 -netdev tap,id=network0,ifname=tap0,script=no,downscript=no
有了这个虚拟机,我可以上网,更新系统,在虚拟机上接收 ssh 连接,但我无法执行我期望的平均操作,安装 npm 包。我收到此错误消息:
npm ERR! Invalid argument: family must be 4 or 6
你应该知道我之前经过很多次才知道有网络问题所以不是来自npm。与这两个 VM 软件的比较告诉我结果在哪里。
谢谢