Pacotes UDP vistos no nível da interface, mas não entregues ao aplicativo no RedHat

4

Eu tenho um problema com o recebimento de tráfego UDP em um servidor RHEL6. Ao capturar o tráfego com o tcpdump, os pacotes ficam visíveis (as somas de verificação estão corretas, o IP de destino e o MAC correspondem aos da máquina). No entanto, o aplicativo que atende na porta específica não consegue ver nenhum dado, mesmo que o soquete seja aberto com sucesso e apareça na saída netstat -panu. Eu tentei um script de servidor UDP perl simples ( link ) em vez do aplicativo real, mas o resultado é o mesmo (soquete aberto, nenhum dado recebido).

Nenhuma regra de firewall está configurada. Aqui está o 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  

Além disso, netstat -s -u não mostra nenhum pacote UDP recebido pelo sistema:

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

Esse é um ambiente seguro para o cliente e não consigo fazer login em outra máquina na rede para tentar enviar pacotes UDP de teste manualmente.

Alguém poderia me apontar uma direção para resolver ainda mais?

    
por wojciech_k 21.09.2015 / 17:49

1 resposta

1

Verifique se isso ajuda. O Kernel do Linux não passa por pacotes UDP multicast Basicamente, se net.ipv4.all.rp_filter = 1, o kernel executa a validação do Strict Reverse Path. Mais documentação pode ser encontrada no link

    
por 12.08.2016 / 06:43