在练习 SysAdmin 认证时,我启动了一台虚拟机。我无法从 LAN 上的笔记本电脑通过 SSH 进入虚拟机。我可以从主机操作系统内部通过 SSH 进入虚拟机。在阅读并运行 traceroute 后,我意识到虚拟网桥位于子网上,因此我在笔记本电脑上运行了 ip route add 192.168.122.26 via 192.168.1.101。现在 traceroute 得出,
1 192.168.1.101 2.717 ms 2.807 ms 2.780 ms
2 192.168.1.101 2.782 ms 2.786 ms 3.932 ms
Ping 192.168.122.26 得到结果,192.168.1.101 icmp_seq=1 Destination Port Unreachable
。由于 traceroute 没有通过我的路由器,所以我不怀疑我的路由器的防火墙是问题所在。我猜想问题可能是我的主机桌面或虚拟机中的防火墙,但虚拟机的 iptables 是空的。
显然,virt-install 不再将域的配置保存在 /etc/xen 中。从我的历史记录来看,我使用的命令是
sudo virt-install --connect xen:// --paravirt -n quark -f /dev/ubuntu-vg/qark -l /vm/OS/debian-9.4.0-amd64-netinsta.iso -r 8192 --vcpus --nographics --os-variant debian9
另外,virbr0:inet 192.168.122.1/24,主机 dom0 是带有 Xen 4.9 的 Ubuntu 18 LTS。
答案1
我记得 iptables 不会自动保存更改,所以我刷新了主机操作系统的规则。然后我就能够直接登录到我的虚拟机了。现在我只需要为主机操作系统找出一个谨慎的规则集。如果边缘路由器有防火墙,我仍然不清楚为什么每个主机都需要防火墙,但这是另一天的问题。