La idea del bridge es que funcione bajo nivel dos (enlace), analice el encabezado, y sepa donde enviarlo, osea necesitas la resolucion de las direcciones de internet a la red local (arp)
Hola Felipe. Tienes razón, pero para que eso pase se usa la tabla ARP del kernel, y no es necesario que el kernel desarme los paquetes para que lleguen a ser procesados en la capa de IP. # arp -an ? (192.168.1.1) at 02:00:F5:41:EB:91 [ether] on eth0 ? (192.168.10.214) at 00:07:95:32:DB:C2 [ether] on eth2 ? (192.168.10.216) at 00:E0:4C:8F:11:EC [ether] on eth2 ? (192.168.10.229) at 00:03:CE:88:C8:73 [ether] on eth2 ? (192.168.10.222) at 00:13:8F:1A:EB:80 [ether] on eth2 ? (192.168.10.205) at 00:16:76:0B:1B:0A [ether] on eth2 Con esta tabla, ya el kernel tiene información suficiente para enviar los paquetes a donde toque. Cuando el kernel recibe un arp request (digamos en eth0) y no tiene la ARP en su tabla, entonces el bridge debe re-transmitir ese request a las otras interfaces.
Ahora lo que seria bueno es que yo vea como me funciona mi dmz y toda la red sin el proxy_arp (cosa que desgraciadamente no puedo hacer ya q son servidores de produccion, pero yo creo q el sabado en la madrugada lo hare ) y asi podriamos intercambiar nuestras "experiencias de trafico". Vi tu wiki y
Ah, veo. Trata de hacer funcionar primero el bridge, sin snort-inline. Consulté con un amigo y también piensa que no es necesario activar ip_forward ni proxy arp para tener un bridge. Si lo que tienes es un brouter, en ese caso si toca hacerlo (por lo menos poner ip_forward). No tengo como hacer pruebas ahora para probar las combinaciones.
mira habiamos pensado hacerlo con ebtables pero al final nos decidimos por snort-inline+iptables para un mejor control de la dmz aca te mando partes del script de iptables iptables -F modprobe ip_queue
iptables -P FORWARD DROP iptables -A FORWARD -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -m state --state INVAL ID -j DROP
Por lo que veo, toca usr iptables para usar ip_queue, ¿no? No sé si eso se pueda con ebtables, supongo que no, pero no estoy seguro.
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j QUEUE
Creo que esto no se puede hacer en ebtables.
iptables -A FORWARD -p tcp -s 0/0 -d IP_SERVER --dport 1:65301 -j DROP
Esta regla también la podrías hacer con ebtables, usando --ip-destination-port Leyendo ebtables vi algo interesante que te puede servir, y es la tabla broute. Si uno hace un DROP a un paquete en esa tabla, el paquete es enrutado, lo que quiere decir que lo puedes procesar con iptables. Si uno le da ACCEPT a un paquete acá, entonces es puenteado (bridged). Creo que puedes usar eso. Y tienes razón en cuanto al interfaces(5), tal vez valga la pena poner algo como (esto no está probado, me lo recomendó un amigo): iface br0 inet manual pre-up brctl addbr br0 pre-up brctl addif br0 eth0 pre-up brctl addif br0 eth1 pre-up brctl addif br0 eth2 pre-up ifconfig eth0 up pre-up ifconfig eth1 up pre-up ifconfig eth2 up up ifconfig br0 up up ifconfig br0 192.168.1.2 down ifconfig br0 down post-down ifconfig eth0 down post-down ifconfig eth1 down post-down ifconfig eth2 down post-down brctl delif br0 eth0 post-down brctl delif br0 eth1 post-down brctl delif br0 eth2 post-down brctl delbr br0 Cordialmente, Nelson.- -- http://arhuaco.org http://emQbit.com