Como posso evitar que o TINC retransmiti o DHCP?

2

Eu estou rodando o tinc em vários roteadores NAT rodando Debian 7 Wheezy, a VPN funciona bem por meses, exceto porque eu configurei-a no modo switch, ela retransmite as requisições e respostas DHCP através de toda a VPN. O problema é que o host A está usando um Pool de 10.10.10.2-254 para DHCP, com 10.10.10.1 como gateway (host A), o host B está usando um Pool de 10.10.10.2-254 para DHCP com 10.10.20.1 como gateway (host B) e assim por diante.

Por favor, note que a interface tinc tap (ethernet) é conectada através da interface LAN física, porque o objetivo da minha "nuvem" é fazer com que TODOS os hosts em todas as redes (A, B ..) apareçam na mesma LAN.

Estou procurando uma solução simples para superar isso. Tentei usar iptables com physdev e physdev-in especificando a interface tinc, mas isso não parece funcionar.

Existe alguma outra solução para isso?

P.S: a mudança de tinc para o modo roteador não é uma solução, pois eu realmente preciso de protocolos multicast e outros protocolos não roteáveis.

    
por Sir.pOpE 26.02.2014 / 05:24

1 resposta

2

Ele deve funcionar com iptables -t mangle -m physdev se você tiver a variável sysctl net.bridge.bridge-nf-call-iptables definida como 1.

sysctl -w net.bridge.bridge-nf-call-iptables=1
iptables -t mangle -I PREROUTING -m physdev --physdev-in vpn1 \
    -p udp --dport 67:68 -j DROP


Você também tem a alternativa de bloqueá-lo com ebtables:

## dont accept dhcp packets directed to the local machine
ebtables -A INPUT --in-interface vpn1 --protocol ipv4 \
    --ip-protocol udp --ip-destination-port 67:68 -j DROP

## dont forward dhcp packets coming in from vpn
ebtables -A FORWARD --in-interface vpn1 --protocol ipv4 \
    --ip-protocol udp --ip-destination-port 67:68 -j DROP

## dont send dhcp requests over vpn
ebtables -A FORWARD --out-interface vpn1 --protocol ipv4 \
   --ip-protocol udp --ip-destination-port 67:68 -j DROP
    
por 29.04.2014 / 19:30