使用socat和PuTTy使用ssh隧道转发UDP

时间:2016-08-25 21:21:32

标签: ssh tcp udp putty socat

我正在尝试使用UDP协议,使用ssh隧道。 我有这两台机器,有这些配置:

1)工作站a使用windows 7,使用putty和socat使用cygwin。

2)带有raspbian的RaspberryPi。

仅供测试(我需要UDP用于其他程序,但如果这不起作用是无用的测试其他东西),我正在尝试使用Workstation我的路由器的DNS服务器,它位于RaspberryPi后面。

在谷歌上搜索并看到很多例子之后我做了这个:

1)我使用PuTTy将Workstation连接到RaspberryPi,并在Workstation本地TCP端口50053上打开并将其转发到RasberryPI本地TCP 50053.(L50053到127.0.0.1:50053)

2)在Workstation上我的cygwin shell上运行: socat udp-recvfrom:53,reuseaddr,bind = 127.0.0.1,fork tcp:127.0.0.1:50053

3)在我的RaspberryPI上运行: socat tcp4-listen:50053,reuseaddr,fork,bind = 127.0.0.1 UDP:192.168.1.1:53 (即使用8.8.8.8:53测试)

我在每个指南中都看到这一点必须有效,但是,对我来说并非如此。

有什么建议吗?

有什么方法可以看看socat是否正常运作?

1 个答案:

答案 0 :(得分:0)

您应该尝试udp-listen而不是udp-recvfrom。 udp-recvfrom将为每个UDP数据包创建新的TCP连接。我通过SSH PuTTy连接遇到类似的UDP隧道问题,对我来说UDP-LISTEN就是这个伎俩。