Bom dia a todos
Meu aplicativo faz uso primário de pacotes Multicast
ip = 224.8.0.1
Eu testei redes Wi-Fi / Ethernet e hospedadas normais, o que é bom.
Problema:
Meu servidor OpenVZ executa o OpenVPN: UDP. Meu aplicativo deve permitir que pacotes multicast fluam pela VPN e sejam recebidos por qualquer outro cliente conectado à VPN, mas isso não acontece.
Eu fiz um tcpdump no adaptador tun0 do OpenVPN, nenhum tráfego multicast é enviado, no entanto, no lado do remetente, o wireshark detecta o tráfego sendo enviado.
Depois da pesquisa, me deparei com este post
https://openvpn.net/archive/openvpn-devel/2004-04/msg00032.html
I'd try switching to 'dev tap' (no bridging) to see if that helps.
I did see some old reports about multicast/igmp not working over tun devices, but have also read reports that it 'now works' ...
Also make sure you've disabled rp_filter on the tun device, as multicast address don't pass the 'rp_filter' check (/proc/sys/net/ipv4/conf/*/rp_filter)
Não consigo mudar para tocar, por isso tentei echo 1 > ../../rp_filter mas está protegido contra gravação.
Com base em outro post, aqui estão 3 possíveis soluções :
https://community.openvpn.net/openvpn/ticket/79
(1) Let the kernel do the routing. That means falling back to one OpenVPN daemon on each end of the tunnel, as in 1.x.
(2) Use a tun interface in OpenVPN 2.0 in multiclient mode. This will treat multicast like broadcast.
(3) Use multicast tunnels -- this will tunnel the multicast packets through OpenVPN encapuslated in an IP-in-IP container which should work fine.
Outra solução [possível] [3] é:
you'd need to sniff and intercept IGMP packets coming in, maintain multicast routing state, and replicate multicast packets according to a newly introduced multicast forwarding table.
A opção (3) parece mais apropriada, mas não tenho ideia de como configurá-la.
Alguém poderia me ajudar com isso?
server.conf
port 1025
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh2048.pem
server 10.0.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-config-dir ccd
route 10.0.0.2 255.255.255.252
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
client-to-client
keepalive 10 120
comp-lzo no
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log
verb 4
#possible bandwidth increase
sndbuf 393216
rcvbuf 393216
push "sndbuf 393216"
push "rcvbuf 393216"
push "remote-gateway x.x.x.x"
push "dhcp-option DNS 8.8.8.8"
ccd-exclusive
#for checking active clients
management localhost 7505
iptables é bom, recentemente adicionei
iptables -A INPUT -i tun0 -m pkttype --pkt-type multicast -j ACCEPT
iptables -A INPUT -i tun0 --protocol igmp -j ACCEPT
mas sem sorte