Hace tiempo os contaba que tengo un router genérico con DD-WRT como gateway en casa.
Resulta que venía padeciendo un problema: los puertos del switch del router están aislados. Esto es, cada una de las “bocas” del router genérico funciona perfectamente con respecto a que te da acceso a internet. Pero no permite comunicación entre ellas, un ordenador no tiene ni idea de que hay otros aparatos conectados en la misma red.
Lo curioso del caso es que el aislamiento sólo ocurre con los puertos físicos, con la red inalámbrica si que hay conectividad.
Este problema es un bug/feature del DD-WRT, y ha aparecido/desaparecido en los últimos dos/tres años de manera recurrente.
Lo primero que tenemos que entender es que dicho aislamiento puede ser deseado, quizás queremos que una red quede dividida en dos o más segmentos aislados entre si. Para eso existen las vlan. Y de hecho hasta hace algún tiempo la solución pasaba por añadir los siguientes comandos en la secuencia de inicio del router:
swconfig dev switch0 set enable_vlan 1 swconfig dev switch0 set apply
Pero como os cuento: hasta hace algún tiempo. O lo que es lo mismo: desde hace tiempo esa solución no funciona. Es más, dicho comando hacía que dejara de funcionar el switch del router.
Ayer, buscando por enésima vez sobre el tema descubrí la pieza que faltaba:
swconfig dev switch0 set reset swconfig dev switch0 set enable_vlan 1 swconfig dev switch0 set apply
Añadir un reset al switch es lo que faltaba. De hecho en el código fuente están esas mismas líneas pero para la interfaz eth1.
Excelente aporte!!! Ya me tenia desesperado un router que le instale DDWRT porque no podía conectarme a los equipos en red.