¿Un puente entre 2 interfaces TAP necesita una dirección IP?

¿Un puente entre 2 interfaces TAP necesita una dirección IP?

Estoy intentando configurar openvpn en una máquina para tener 2 interfaces tap diferentes (tap0 y tap1) y luego un puente que conecte esas interfaces. Openvpn se configura con una configuración de puente de servidor para cada interfaz TAP. La idea es que un cliente de tap0 pueda hablar con un cliente de tap1 y viceversa.

No hay ninguna NIC física involucrada en el puente y la interfaz del puente está configurada sin IP/máscara de red/transmisión. Acabo de aparecer con un solo "ifconfig brX up"

Puedo hacer ping entre los 2 clientes cuando ambos están conectados al servidor openvpn, cada uno a su propia interfaz tap mencionada anteriormente, sin embargo, no veo tráfico cuando intento tcpdump la interfaz puente.

Estoy un poco confundido en algunas cosas:

  1. ¿Necesito tener una IP configurada en la interfaz del puente? No veo el motivo, ya que todo lo que hará es hacer que las interfaces virtuales se comuniquen entre sí.

  2. ¿Es el hecho de que la interfaz del puente no tiene una IP/máscara de red/transmisión asignada la razón por la que no puedo ver el tráfico de ping en la interfaz del puente cuando tcpdumping esa interfaz?

  3. Si la respuesta al número 2 es Sí, supongo que tampoco es posible usar iptables para bloquear/permitir el tráfico en esa interfaz, ¿correcto? Si es así, ¿hay alguna otra manera de lograr lo que se haría con iptables en una interfaz como esa?

Respuesta1

¿Necesito tener una IP configurada en la interfaz del puente? No veo el motivo, ya que todo lo que hará es hacer que las interfaces virtuales se comuniquen entre sí.

No, un puente puro sólo funciona a nivel de Ethernet; ni siquiera mira el encabezado IP. Cuando asignas una dirección IP a br0, en realidad la estás asignando al sistema operativo host, que está conectado a ese puente.

Sin embargo, no ha dicho nada acerca de agregar las tapinterfaces comopuertos puente. Debe indicarle explícitamente al puente qué puertos administra:

  • brctl addif br0 tap0

  • ip link set tap0 master br0

¿Es el hecho de que la interfaz del puente no tiene una IP/máscara de red/transmisión asignada la razón por la que no puedo ver el tráfico de ping en la interfaz del puente cuando tcpdumping esa interfaz?

No.

Pero es posible que el puente todavía esté en modo de "aprendizaje"; todavía el valor predeterminado es 30 segundos; compruébelo usando brctl showstp br0. Es posible que los puertos no se hayan agregado al puente (ver arriba). Es posible que las interfaces del puerto todavía estén inactivas.

(Además, queridos dioses¿Por qué la gente piensa que necesitan configurar las direcciones de transmisión?De verdad, el SO ya puede calcularlo desde IP | ~ máscara de red. Casi nunca es útil configurar la dirección de transmisión manualmente, simplemente se vuelve más fácil obtenerla accidentalmente.equivocado.)

Si la respuesta al número 2 es Sí, supongo que tampoco es posible usar iptables para bloquear/permitir el tráfico en esa interfaz, ¿correcto? Si es así, ¿hay alguna otra manera de lograr lo que se haría con iptables en una interfaz como esa?

Sí, necesitas ebtablesfiltrar el tráfico; no atraviesa el firewall IP.

(Sin embargo, supongo que eso no siempre es cierto. El firewall Untangle, por ejemplo, parece funcionar en un modo cruzado de enrutador/puente, lo cual es algo confuso).

información relacionada