有四个主机
hostA winXP
hostB Win2003
hostC Linux RHEL
hostD Linux RHEL
hostA不能直接连接到C和D,但B可以
hostA使用VPN连接到hostB
hostB和hostC属于同一个子网1
hostD在子网2中
从hostA我需要通过SSH连接到hostC和hostD。
现在我可以这样做了:
1.通过RDPlogin从hostA连接到hostB,然后:
2.开始腻子客户端。
我想省略步骤1,并直接从A连接到C和D.
在主机B上,我有pipe理帐户和configuration端口转发如下:
netsh接口portproxy add v4tov4 listenport = N1 connectaddress = hostC_IP connectport = N2
netsh接口portproxy add v4tov4 listenport = N3 connectaddress = hostD_IP connectport = N2
netsh interface portproxy显示全部:
在IPv4上收听:连接到IPv4: 地址端口地址端口 --------------- ---------- --------------- ---------- * N1 hostC_IP N2 * N3 hostD_IP N2
现在从主机B我可以连接到C和D:
ssh localhost:N1
ssh localhost:N3
从hostA ssh hostB:N1也可以,但ssh hostB:N3不
我猜想原因可能是不同的子网,仍然不知道如何解决这个问题。 我该怎么办?
[我以前从来没有听说过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说:
Symtpons:“端口redirect的规则是通过使用命令设置,但不起作用。
原因:“该命令被发送到IPV6MON.DLL帮助程序,因此只有在安装IPv6协议时才能使用。
解决方法:“安装IPv6协议”。
既然本地工作,而另一方不可能不相关,但应该检查。
[你考虑过安装一个ssh服务器吗?]