转发端口

Mut*_*thu 8 java sockets nat tunneling

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

  • 我有一个使用套接字的源服务器和端口.这是一个java程序,可以在windows和linux中运行,这是无关紧要的.
  • 我有设备继续向此端口发送数据.可能存在双向通信
  • 我想将此数据重定向到另一个远程服务器和端口.因此,对于客户,每当我移动我的应用服务器时,他们都不必担心更改IP地址.

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

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

有人会抛出一些指针吗?是否可以在linux中使用iptables NAT?

小智 4

你可以试试netcat或者socat(比netcat更强大)

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

socat tcp4-listen:80,fork tcp4:{another server}:{another port}
Run Code Online (Sandbox Code Playgroud)

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

两者都与java无关。