使用xinetd进行UDP端口转发



我在谷歌和这里寻找我的问题的答案,但是没有找到合适的答案。

这是上下文:我有一个软件运行在一些服务器(没有防火墙)在一个子网。在不同子网的某些PC上运行另一个软件。两个子网都连接到网关服务器。所有计算机都运行CentOS或RHEL。在网关服务器上,有一个防火墙,防止多播流量离开一个子网,并允许外部的客户端连接到该子网内的计算机。因此使用xinetd。外部的计算机需要将数据包发送到一个特定的端口,内部的计算机根据发送者的不同应答另一个特定的端口。因此网关不需要跟踪发送方-接收方关系。它只需要将特定端口上的UDP从一个子网转发到另一个子网的特定计算机。

所以我在/etc/services中添加了一个服务(一个方向):

udp-gateway    6000/udp

并在/etc/xinetd中创建相应的配置文件d/网关:

service udp-gateway
{
  disable                 = no
  socket_type             = dgram
  protocol                = udp
  wait                    = no
  user                    = root
  redirect                = 192.168.1.1 6000  #Server inside the 192.168.1.0 subnet
}

现在的问题是,服务器没有打开udp端口来监听('netstat -nulp'说)。当我将协议更改为TCP并将socket_type更改为stream时,它就可以工作了。但是我需要UDP。

有可能这对于UDP是不可能的吗?或者netstat只是没有显示端口?还是我的xinetd配置缺少了什么?

提前感谢,每一个提示都是赞赏的。

本尼

redirect                = 192.168.1.1 6000  #Server inside the 192.168.1.0 subnet

从xinetd的手册页:

重定向

允许tcp服务重定向到另一个主机。

这意味着对udp使用重定向是不可能的。对于xinetd,我不知道还有什么其他的方法

相关内容

  • 没有找到相关文章