Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 接收数据包并将其转发到不同的端口_Java_Network Programming - Fatal编程技术网

Java 接收数据包并将其转发到不同的端口

Java 接收数据包并将其转发到不同的端口,java,network-programming,Java,Network Programming,Java中是否有最好的工具能够在特定端口上接收数据包,并在另一个端口上转发它们?例如: 端口514 UDP上的传入系统日志->转发到端口1514 UDP上的新目标 流量不是视频流或任何东西,只是一些系统日志数据 谢谢如果您对用户空间应用程序中的数据不感兴趣,则不建议在该应用程序中执行此操作。在linux中,您可以使用iptables实现这一目的。运行此命令 sudo iptables -t nat -A PREROUTING -i eth0 -p udp --dport $srcPortNumb

Java中是否有最好的工具能够在特定端口上接收数据包,并在另一个端口上转发它们?例如:

端口514 UDP上的传入系统日志->转发到端口1514 UDP上的新目标

流量不是视频流或任何东西,只是一些系统日志数据


谢谢

如果您对用户空间应用程序中的数据不感兴趣,则不建议在该应用程序中执行此操作。在linux中,您可以使用iptables实现这一目的。运行此命令

sudo iptables -t nat -A PREROUTING -i eth0 -p udp --dport $srcPortNumber -j REDIRECT --to-port $dstPortNumber
如果iptables服务尚未运行,则可能需要启动它。检查linux发行版,了解如何检查该发行版中的状态或启动iptables服务


如果您使用的是windows,则可能需要查看。

您在哪个平台上工作?windows、linux?你是要图书馆吗?您正在尝试实现它吗?如果您正在寻找TCP代理:对于UDP,这可能会起作用:很抱歉描述不清楚-它应该是linux上commandline的java应用程序-alredy将其安装并运行:不可行可能太强。这绝对是正确的。内核空间解决方案会更快,也更不容易丢弃数据包。我是通过一个DatagramSocket监听一个端口,并打开一个处理程序线程来实现的,当有东西到达时,该线程会将数据包发送到另一个端口。我现在不能让行李超载而掉下