我正在尝试使用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是否正常运作?
答案 0 :(得分:0)
您应该尝试udp-listen
而不是udp-recvfrom
。 udp-recvfrom将为每个UDP数据包创建新的TCP连接。我通过SSH PuTTy连接遇到类似的UDP隧道问题,对我来说UDP-LISTEN就是这个伎俩。