8

我对基于套接字的通信的软件级端口转发/隧道有一个简单的要求。

  • 我有一个使用套接字的源服务器和端口。这是一个适用于 Windows 和 linux 的 java 程序,这无关紧要。
  • 我有不断向该端口发送数据的设备。可能存在双向通信
  • 我想将此数据重定向到另一个远程服务器和端口。所以对于客户来说,每当我移动我的应用服务器时,他们就不必担心 IP 地址的变化。

是否有任何工具/守护程序/服务程序可用于配置和执行此操作?

我尝试了 SSH,但据我了解,这需要启用 SSH 协议的服务器。就我而言,这不适用。我也尝试过使用 JSch,但这又是一个 java 格式的 SSH 实现。

有人可以提出一些指示吗?是否可以在 linux 中使用 iptables NAT?

4

3 回答 3

4

可以试试netcator socat(比netcat厉害)

socat 使用 tcp4 转发端口 80 的示例:

socat tcp4-listen:80,fork tcp4:{another server}:{another port}

并参考http://en.wikipedia.org/wiki/Netcat#Port_Forwarding_or_Port_Mapping了解 netcat

两者都与java无关。

于 2011-12-04T08:27:17.890 回答
2

有一个名为portforward的 TCP/IP 端口转发实用程序,可用于code.google.com. 它完全是用 Java 编写的。

于 2011-12-04T08:21:01.113 回答
0

如果你已经xinetd在你的系统上运行,它提供了一个简单的端口转发机制,如果你还没有运行 IPTables,它可能很有用。

如果您正在运行 IPTables,Server Fault 有一个非常棒的简短问题,目标非常相似。虽然我觉得它有点简洁,但可以使用更详细的文档

于 2011-12-04T08:33:00.960 回答