因此,我已经没有办法排除故障来解决这个问题,并认为这是下一步。简而言之,我在 VirtualBox 中运行 Ubuntu,并尝试使用 VirtulBox 的 natted 网络功能通过 SSH 连接到虚拟机。为了实现这一点,我在 VirtualBox 中进行了以下配置。
国家网络- IPv4 prefix:10.0.0.0/24 DHCP:disabled
(使用 10.0.0.2 在网络范围内静态分配访客)
端口转发规则-protocol:TCP Host:172.0.0.1 port:61022 <--> Guest:10.0.0.2 port:22
我已经验证端口 61022 正在使用环回地址在我的主机上监听,并且 openSSH 正在运行并使用端口 22 在我的客户机上监听。但是,当我尝试使用 PuTTY 通过 SSH 连接到机器时,出现以下错误。
网络错误:软件导致连接中止
我将 VirtualBox 中的网络类型改为桥接,并为机器分配了本地网络上的 IP。我可以用该配置通过 SSH 连接到机器,但使用 NAT 或 NAT 网络时则不行。
我已进行以下故障排除,但未成功。更新了所有软件 PuTTY 和 Virtualbox 以及客户机和主机操作系统。使用 netsh advfirewall -r 重置 Windows 防火墙以及 winsock 设置并重新启动系统,但尝试 SSH 时仍然出现错误。我还运行了数据包捕获以确保使用了正确的端口。
No. Time Source Destination Protocol Length Info
1 0.000000 127.0.0.1 127.0.0.1 TCP 56 49786 → 61022 [SYN]
No. Time Source Destination Protocol Length Info
2 0.000064 127.0.0.1 127.0.0.1 TCP 56 61022 → 49786 [SYN, ACK]
No. Time Source Destination Protocol Length Info
3 0.000104 127.0.0.1 127.0.0.1 TCP 44 49786 → 61022 [ACK]
No. Time Source Destination Protocol Length Info
4 0.010466 127.0.0.1 127.0.0.1 TCP 72 49786 → 61022 [PSH, ACK]
No. Time Source Destination Protocol Length Info
5 0.010497 127.0.0.1 127.0.0.1 TCP 44 61022 → 49786 [ACK]
No. Time Source Destination Protocol Length Info
7 18.635780 127.0.0.1 127.0.0.1 TCP 44 61022 → 49786 [RST, ACK]
任何解决此问题的建议或故障排除想法都将不胜感激,谢谢!
答案1
我最终发现了问题所在。似乎在初始设置期间将默认网络从 10.0.2.0/24 更改为 10.0.0.0/24 导致了一些问题。我在网络上启用 DHCP 并将客户机切换到 DHCP 后注意到了这一点。它从默认网络范围而不是配置的网络范围接收 IP。删除并重新添加 Nat 网络并再次为其提供防火墙权限解决了这个问题。