在接口级看到的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。