O tap
destina-se ao encapsulamento em ponte no OpenVPN - você deve uni-lo a uma ponte como br0
usando brctl
.
A idéia é que você pode colocar tap0
e eth0
, por exemplo, em uma ponte br0
. Em seguida, o tráfego de difusão atravessa essa ponte. (O tráfego de broadcast vindo de tap0
será encaminhado para eth0
e vice-versa, enquanto em uma situação padrão roteada não.) Seu túnel OpenVPN via tap0
é então "comutado" para eth0
em vez de " encaminhado "para ele. Todo o br0
obtém um IP e você lida com br0
em vez de eth0
ou tap0
.
Completamente possível ter uma ponte com apenas uma interface e adicionar / remover interfaces adicionais com brctl
conforme necessário.
Portanto, coloque tap0
em uma ponte e lide com a interface da ponte, ou use tun
interfaces.
Também é possível que iptables
regras estejam interferindo.
Atualização - veja aqui: link - particularmente este trecho:
The difference between a tap interface and a tun interface is that a tap interface outputs (and must be given) full ethernet frames, while a tun interface outputs (and must be given) raw IP packets (and no ethernet headers are added by the kernel). Whether an interface functions like a tun interface or like a tap interface is specified with a flag when the interface is created.
Parece que, se você não enviar quadros Ethernet inteiros para tap0, isso não funcionará como esperado por causa disso.