有四位主持人
主机A winXP
主机B Win2003
主机C Linux RHEL
主机D Linux RHEL
主机A无法直接连接C和D,但B可以
hostA 使用 VPN 连接到 hostB
hostB 和 hostC 属于同一子网 1
hostD 位于子网 2 中
我需要从 hostA 通过 SSH 连接到 hostC 和 hostD。
现在我可以按如下方式进行操作:
1.通过RDP登录从主机A连接到主机B,然后:
2.启动putty客户端。
我想省略步骤 1,直接从 A 连接到 C 和 D
在 hostB 上,我有管理员帐户,并配置端口转发如下:
netsh 接口 portproxy 添加 v4tov4 监听端口 = N1 连接地址 = hostC_IP 连接端口 = N2
netsh 接口 portproxy 添加 v4tov4 监听端口 = N3 连接地址 = hostD_IP 连接端口 = N2
netsh 接口 portproxy 显示全部:
在 IPv4 上监听:连接到 IPv4: 地址 端口 地址 端口 --------------- ---------- --------------- --------------- ---------- * N1 主机 C_IP N2 * N3 主机 D_IP N2
现在我可以从主机 B 连接到主机 C 或主机 D:
ssh 本地主机:N1
ssh 本地主机:N3
从 hostA ssh hostB:N1 也可以,但是 ssh hostB:N3 不行
我猜原因可能是子网不同,但仍然不知道如何修复。我该怎么办?
答案1
[我之前从未听说过 portproxy,所以这可能是无稽之谈]
看起来 portproxy 是为了启用 IPv6 访问而编写的(http://www.sixxs.net/wiki/PortProxy)(http://technet.microsoft.com/en-us/library/cc776297%28WS.10%29.aspx)
本文http://support.microsoft.com/kb/555744说:
症状:“使用命令设置了端口重定向规则,但是不起作用。”
原因:“该命令被发送到 IPV6MON.DLL 帮助程序,因此只有在安装了 IPv6 协议后它才会起作用。”
解决方案:“安装 IPv6 协议。”
由于本地的一个可以工作而另一个不工作,这可能无关紧要,但应该检查。
[您是否考虑过安装 ssh 服务器?]