ssh root@192.168.100.90时出现ssh: connect to host 192.168.100.90 port 22: Connection timed out
![]()
1、首先排查IP
在bash中无法ping通

但在管理员终端(PowerShell)中可以ping通

同一目标主机(192.168.100.90)在 Windows 主机上能正常 ping 通,但在 Linux 主机上 ping 失败(100% 丢包),说明两台主机与目标的网络连接存在差异。核心问题出在Linux 主机到目标主机的网络链路上,可能的原因及排查方向如下
2、检查 Linux 主机的 IP 配置(执行 ip addr或 ifconfig),确认其 IP 地址与目标主机(192.168.100.90)是否在同一子网

排查为不在同一子网,所以问题的核心原因是Linux 主机(WSL 环境)与目标主机(192.168.100.90)不在同一网段,且没有可达的路由,导致无法通信
3、使用 Windows 的端口转发(针对 SSH 场景)
执行 ip route 查看网关配置

记录IP(这里是172.19.160.1)和网卡名(eth0)
执行 sudo ip route add 192.168.100.0/24 via (记录IP) dev (记录网卡) ,也可以复制上张图框起来的部分粘贴到目标ip后面
![]()
执行后可通过ip route show 192.168.100.0/24检查是否配置成功
![]()
配置成功后,在管理员终端(PowerShell)中执行, listenaddress后填写记录ip,connectaddress后填写目标ip
netsh interface portproxy add v4tov4 listenaddress=172.19.160.1 listenport=2222 connectaddress=192.168.100.90 connectport=22
执行完成后,回到SSH执行即可,IP记得改为记录ip
ssh -p 2222 root@172.19.160.1
该方案是通过 Windows 代理 SSH,该方案属于临时处理,并未解决问题,但能用了不是
PS:该方法修改后scp指令执行不了,如下修改即可
原指令为
![]()
修改为
![]()
这里的P是大写哟
7124

被折叠的 条评论
为什么被折叠?



