在接口级看到的UDP数据包,但没有传送到RedHat上的应用程序

我在RHEL6服务器上接收UDPstream量时遇到问题。 当使用tcpdump捕获stream量时,数据包是可见的(校验和正确,目标IP和MAC与机器匹配)。 但是,监听特定端口的应用程序无法看到任何数据,即使套接字已成功打开并显示在netstat -panu输出中。 我尝试了一个简单的perl UDP服务器脚本( http://www.perlmonks.org/?node_id=659588 ),而不是实际的应用程序,但结果是一样的(套接字打开,没有收到数据)。

没有configuration防火墙规则。 这是iptables --list output

 Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 

此外, netstat -s -u不显示系统收到的任何UDP数据包:

 Udp: 0 packets received 0 packets to unknown port received. 0 packet receive errors 0 packets sent 

这是一些安全的客户环境,我无法login到networking中的另一台机器尝试手动发送testingUDP数据包。

任何人都可以指出我的方向进一步排除故障吗?

检查是否有帮助。 Linux内核不通过多播UDP数据包基本上,如果net.ipv4.all.rp_filter = 1,那么内核将执行严格的反向pathvalidation。 更多文档可以在https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txtfind。