Wireguard + VLANs

Hostias, además te está dando un refuse. ¿cómo tienes el NAT ahora mismo? Deja en él únicamente la regla de masquerade y comenta si tienes alguna otra. Igualmente, comenta la de mangle del MTU, que esto es otro tema y no van por ahí los tiros (cuando es tema MTU se queda pensando forever el navegador, pero no da refuse)
Solo tengo la regla de masquerade y el Hairpin-NAT (que he deshabilitado para probar)
1673606785451.png

Se me ocurre hacerle que le actualices el firmware al chacharro, a ver si traga: https://community.netgear.com/t5/Pl...age-JGS524Ev2-from-another-subnet/m-p/1142952
Lo actualicé a la última versión disponible en la Web, pero puedo probar como dicen ahí a reinstalarle FW de nuevo, y restaurarlo de fábrica y reconfigurarlo de nuevo. Eso no lo puedo probar hasta que vuelva por allí.
Si buscas por internet hay más casos parecidos. En otro dicen que entres con la propia utilidad del switch (desde local) y deshabilites y vuelvas a habilitar el acceso web.
Para MAC solo hay una utilidad de discovery. Pero la ProSafe Tool que permite manejar el Switch con la aplicación es solo para Windows, intenté instalarlo con Wine, pero no parecía ir bien. Respecto a desactivar el acceso Web no se puede en este modelo, solo te permite:
- Solo Acceso Web
- Acceso Web + ProSafe tool

Si quieres, podemos meter una regla en el NAT para que enmascaremos la IP que le llega al switch cuando vienes de la VPN y se crea que vienes del propio router. Quizá si lo anterior no te funcione, esa chapuza te valga.

Saludos!
Yo veo esto lo más factible en este momento.
Podemos probarla, aunque sea una chapuza, para al menos ir tirando con ellos y saber si vienen por ahí los tiros.
Si me pasas la regla, lo pruebo.

Saludos!
 
Venga, una vez comentado el hairpin y la regla de mangle, mete esta en el NAT
Código:
/ip firewall nat
add action=src-nat chain=srcnat src-address=192.168.90.0/24 dst-address=192.168.30.2 to-addresses=192.168.30.1

Básicamente lo que le dices es: cuando vayas desde la subred de wireguard al switch, cámbiale la ip de origen por la 192.168.30.1, que es de la misma subred que el switch.

Saludos!
 
Venga, una vez comentado el hairpin y la regla de mangle, mete esta en el NAT
Código:
/ip firewall nat
add action=src-nat chain=srcnat src-address=192.168.90.0/24 dst-address=192.168.30.2 to-addresses=192.168.30.1

Básicamente lo que le dices es: cuando vayas desde la subred de wireguard al switch, cámbiale la ip de origen por la 192.168.30.1, que es de la misma subred que el switch.

Saludos!
No te lo vas a creer....pero sigue sin funcionar :(

1673608281328.png


1673608307326.png
1673608322776.png
 
Hostias, pues como no chequee el switch el TTL del paquete... otra más no se me ocurre. Dale un export completo al router porfa, tal y como lo tienes ahora mismo. Además de esto, mira que la regla de reject que metimos en el firewall para aislar las subredes de las otras vlans no nos esté jodiendo (deshabilítala mientras pruebas).

Saludos!
 
Hostias, pues como no chequee el switch el TTL del paquete... otra más no se me ocurre. Dale un export completo al router porfa, tal y como lo tienes ahora mismo. Además de esto, mira que la regla de reject que metimos en el firewall para aislar las subredes de las otras vlans no nos esté jodiendo (deshabilítala mientras pruebas).

Saludos!
Te paso un export con el hide-sensitive (antes de comentar la regla de reject del Firewall).

Por otro lado, he probado deshabilitando esa regla de Firewall, y tampoco soluciona nada:
1673609256249.png
 

Adjuntos

  • Pruebas_Switch.rsc.zip
    3.7 KB · Visitas: 21
No veo nada raro tío. Y dices que si quitas el vlan filtering del bridge (desmarcas el tick y aplicas) ¿tampoco llegas al switch desde la VPN? Me resulta rarísimo.

El switch, ¿le tienes dada IP a mano o por DHCP? Lo único que se me ocurre es que reinstales el firmware del switch, a ver si se le quita la tontería. Y que arranques su config desde cero.

Te corrijo una cosilla (una tontería) que he visto que tienes mal. Veo que en input has metido una regla que permite a la subred de IoT acceder al router para usar su servicio de DNS. Para que eso funcione, la definición de las redes en el dhcp server han de apuntar a las IPs de los gateways correspondientes a dicha subred. Es decir, aquí:
Código:
/ip dhcp-server network
add address=192.168.40.0/24 comment=IoT dns-server=\
    192.168.30.1,8.8.8.8,8.8.4.4 gateway=192.168.40.1

Ese 192.168.30.1 está mal como primer DNS, no lo vas a alcanzar nunca. Además, si vas a usar el propio router como DNS, no es necesario que des segundo y tercer DNS, ya que esos los va a encontrar en IP -> DNS. Esa entrada, debería quedar como la anterior de la subred "Home", pero apuntando a la .40, si quieres usar el DNS del router en lugar de unos públicos:
Código:
/ip dhcp-server network
add address=192.168.40.0/24 comment=IoT dns-server=\
    192.168.40.1 gateway=192.168.40.1

Saludos!
 
No veo nada raro tío. Y dices que si quitas el vlan filtering del bridge (desmarcas el tick y aplicas) ¿tampoco llegas al switch desde la VPN? Me resulta rarísimo.
Correcto. Lo he vuelto a probar, reseteando switch de fábrica, y quitando el VLAN filtering, y nada, se sigue comportando exactamente igual, no es tema de las VLANs 100% seguro.

El switch, ¿le tienes dada IP a mano o por DHCP? Lo único que se me ocurre es que reinstales el firmware del switch, a ver si se le quita la tontería. Y que arranques su config desde cero.
Siempre ha estado con DHCP. De todos modos, en las últimas pruebas he probado con dirección fija, a mano, y tampoco. Todo esto lo he probado después de resetear de fábrica, bajarme de nuevo el último FW y hacer el upgrade. Todo sigue igual.

Me doy por vencido con el dichoso switch, algo debe tener que capa la conexión en cuanto se hace una conexión desde fuera de la red interna.

Te corrijo una cosilla (una tontería) que he visto que tienes mal. Veo que en input has metido una regla que permite a la subred de IoT acceder al router para usar su servicio de DNS. Para que eso funcione, la definición de las redes en el dhcp server han de apuntar a las IPs de los gateways correspondientes a dicha subred. Es decir, aquí:
Código:
/ip dhcp-server network
add address=192.168.40.0/24 comment=IoT dns-server=\
    192.168.30.1,8.8.8.8,8.8.4.4 gateway=192.168.40.1

Ese 192.168.30.1 está mal como primer DNS, no lo vas a alcanzar nunca. Además, si vas a usar el propio router como DNS, no es necesario que des segundo y tercer DNS, ya que esos los va a encontrar en IP -> DNS. Esa entrada, debería quedar como la anterior de la subred "Home", pero apuntando a la .40, si quieres usar el DNS del router en lugar de unos públicos:
Código:
/ip dhcp-server network
add address=192.168.40.0/24 comment=IoT dns-server=\
    192.168.40.1 gateway=192.168.40.1

Saludos!
Gracias. Ya modificado!
Esto lo hice con idea de crear DNS estáticas para los dispositivos domóticos, de la misma forma que hacemos con el router.lan en la VLAN Home :)
 
Un último tiro par el tema switch, sino me doy por vencido. El único rockambol que me queda por probar es que el switch detecte el TTL del paquete que le llega y, si ha dado más de un salto, lo rechace. Vamos a intentar hacer lo mismo que recomienda mikrotik para las conexiones LTE, cuando los operadores nos pisan el freno cuando nos ven hacer tethering con los datos de una SIM. Prueba con esto, sino ya me rindo:
Código:
/ip firewall mangle
add action=change-ttl chain=postrouting new-ttl=set:64 protocol=!icmp src-address=192.168.90.0/24 dst-address=192.168.30.2

Saludos!
 
Un último tiro par el tema switch, sino me doy por vencido. El único rockambol que me queda por probar es que el switch detecte el TTL del paquete que le llega y, si ha dado más de un salto, lo rechace. Vamos a intentar hacer lo mismo que recomienda mikrotik para las conexiones LTE, cuando los operadores nos pisan el freno cuando nos ven hacer tethering con los datos de una SIM. Prueba con esto, sino ya me rindo:
Código:
/ip firewall mangle
add action=change-ttl chain=postrouting new-ttl=set:64 protocol=!icmp src-address=192.168.90.0/24 dst-address=192.168.30.2

Saludos!
Probado, y nada, no hay manera que funcione. Rechaza la conexión sin pensárselo. No queda otra que rendirse.
Menos mal que el switch tampoco es algo que haga falta tocar en exceso.
Cuando diga hasta aquí llegué y lo sustituya por otro, pues espero que no tenga más ese problema.

Como la regla me parece muy interesante, la dejo deshabilitada por si me sirve en un futuro para otra cosilla.
 
Probado, y nada, no hay manera que funcione. Rechaza la conexión sin pensárselo. No queda otra que rendirse.
Menos mal que el switch tampoco es algo que haga falta tocar en exceso.
Cuando diga hasta aquí llegué y lo sustituya por otro, pues espero que no tenga más ese problema.

Como la regla me parece muy interesante, la dejo deshabilitada por si me sirve en un futuro para otra cosilla.
De momento todo el setup funcionando, cuando viva allí le iremos metiendo más cositas.
¿Alguna recomendación/añadido que consideres útil y sugieras para mi red?

En el futuro, cuando meta un par de consolas, tengo que pensar como tratarlas.
La idea sería que estas usaran UPNP, pero solo las consolas, nada de que lo usen otros equipos. Obviamente, no voy a crear una VLAN solo para consolas. Aparte, tengo que pensar si las meto pues en la VLAN IoT (para lo que tendría que cambiar en el switch la config de VLAN de los puertos Ethernet a los que las conecte o conectarlas por Wifi a la red IoT).

Por cierto @pokoyo , van camino a tu casa un par de cervecitas a través de BuyMeACoffee :)

Saludos!
 
Da un repaso a los manuales de tips&tricks y al de scripting del amigo @diamuxin, que tienen bastante info.

Con respecto a las consolas: yo sí que las metería en una vlan, si pretendes usar UPnP. Si usas UPnP, necesitas definir la interfaz externa y otra interna. Y esta última, tal y como lo tienes montado, ha de ser una vlan. Y abrir UPnP a la vlan de IoT… no lo veo.

Si se me ocurre algo más para tu red, te digo.

Gracias por las birras!
 
Da un repaso a los manuales de tips&tricks y al de scripting del amigo @diamuxin, que tienen bastante info.

Con respecto a las consolas: yo sí que las metería en una vlan, si pretendes usar UPnP. Si usas UPnP, necesitas definir la interfaz externa y otra interna. Y esta última, tal y como lo tienes montado, ha de ser una vlan. Y abrir UPnP a la vlan de IoT… no lo veo.
Otra opción que me estoy planteando, es volver a la idea primigenia de una VLAN de Admin, con acceso a todas las demás. En ella metería switch, APs, Router, servidor y mis dispositivos personales (móvil y pórtatil). No me termina de convencer la idea de que cualquier dispositivo enchufado por Ethernet en mi casa tenga acceso al control de mi red, y tampoco corresponde meterlos en IoT porque ahi solo irán dispositivos domóticos con bajos requisitos de ancho de banda y a 2.4GHz en Wifi. Para ello, como dijimos, usaría el Ether8 del Router para esa VLAN de Admin, y crearía un SSID específico solo para admin y dispositivos personales de confianza.

Para ello, con tal de cambiar lo menos posible, reutilizaría la VLAN Home para este propósito (la renombraría a Admin o algo así), y añadiría una VLAN Home adicional, solo con acceso a Internet para todos aquellos dispositivos habituales que no son IoT (que solo tengo red Wifi a 2.4 GHz), y tampoco son dispositivos externos (red Invitados), y que no necesitan acceso por su propia naturaleza a la gestión de la red.

Es aquí donde ubicaría consolas, Fire TVs, impresoras, Televisiones, y en definitiva, cualquier dispositivo de mi casa que no sean mi móvil y mi ordenador personal, ni tampoco para la red de domótica. Aún así, no sé si sería buena idea aplicar UPnP a esta nueva VLAN, o habría que crear una específica para consolas.

Gracias por las birras!
Nada, más que merecidas, porque aún te estoy dando trabajo :p
 
Otra opción que me estoy planteando, es volver a la idea primigenia de una VLAN de Admin, con acceso a todas las demás. En ella metería switch, APs, Router, servidor y mis dispositivos personales (móvil y pórtatil). No me termina de convencer la idea de que cualquier dispositivo enchufado por Ethernet en mi casa tenga acceso al control de mi red, y tampoco corresponde meterlos en IoT porque ahi solo irán dispositivos domóticos con bajos requisitos de ancho de banda y a 2.4GHz en Wifi. Para ello, como dijimos, usaría el Ether8 del Router para esa VLAN de Admin, y crearía un SSID específico solo para admin y dispositivos personales de confianza.

Para ello, con tal de cambiar lo menos posible, reutilizaría la VLAN Home para este propósito (la renombraría a Admin o algo así), y añadiría una VLAN Home adicional, solo con acceso a Internet para todos aquellos dispositivos habituales que no son IoT (que solo tengo red Wifi a 2.4 GHz), y tampoco son dispositivos externos (red Invitados), y que no necesitan acceso por su propia naturaleza a la gestión de la red.

Es aquí donde ubicaría consolas, Fire TVs, impresoras, Televisiones, y en definitiva, cualquier dispositivo de mi casa que no sean mi móvil y mi ordenador personal, ni tampoco para la red de domótica. Aún así, no sé si sería buena idea aplicar UPnP a esta nueva VLAN, o habría que crear una específica para consolas.


Nada, más que merecidas, porque aún te estoy dando trabajo :p
Me parece buen plan igualmente. ¿te atreves a hacerlo tú sólo, con lo que ya sabes? Yo te lo reviso al final si quieres, por si necesitas un par de ojos más.

Saludos!
 
Me parece buen plan igualmente. ¿te atreves a hacerlo tú sólo, con lo que ya sabes? Yo te lo reviso al final si quieres, por si necesitas un par de ojos más.

Saludos!
Me he atrevido, ya que he aprendido bastante y creo que soy capaz.
Lo estoy probando ahora mismo insitu, cambiando la configuración en el Switch para que sea consecuente.

Aquí dejo el export:
Código:
# jan/15/2023 18:26:00 by RouterOS 7.7
# software id = 05JI-0EWS
#
# model = RB5009UG+S+
# serial number =
/interface bridge
add admin-mac=DC:2C:6E:3E:D8:82 auto-mac=no comment=defconf frame-types=\
    admit-only-vlan-tagged name=bridge vlan-filtering=yes
/interface pppoe-client
add add-default-route=yes disabled=no interface=ether2 name=\
    Internet-pppoe-out1 use-peer-dns=yes user=adslppp@telefonicanetpa
/interface wireguard
add listen-port=12345 mtu=1420 name=wireguard-rw
/interface vlan
add interface=bridge name=Admin vlan-id=30
add interface=bridge name=Home vlan-id=50
add arp=reply-only interface=bridge name=Invitados vlan-id=60
add interface=bridge name=IoT vlan-id=40
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
add name=ISOLATED
add name=Wireguard_Interfaces
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=default-dhcp ranges=192.168.88.10-192.168.88.254
add name=pool-Admin ranges=192.168.30.10-192.168.30.254
add name=pool-IoT ranges=192.168.40.10-192.168.40.254
add name=pool-Invitados ranges=192.168.60.10-192.168.60.254
add name=pool-Home ranges=192.168.50.10-192.168.50.254
/ip dhcp-server
add address-pool=default-dhcp interface=bridge name=defconf
add address-pool=pool-Admin interface=Admin name=dhcp-Admin
add address-pool=pool-IoT interface=IoT name=dhcp-IoT
add add-arp=yes address-pool=pool-Invitados interface=Invitados name=\
    dhcp-Invitados
add address-pool=pool-Home interface=Home name=dhcp-Home
/interface bridge port
add bridge=bridge comment=defconf frame-types=admit-only-vlan-tagged \
    interface=ether1
add bridge=bridge comment=defconf frame-types=\
    admit-only-untagged-and-priority-tagged interface=ether3 pvid=40
add bridge=bridge comment=defconf interface=ether4 pvid=30
add bridge=bridge comment=defconf interface=ether5 pvid=30
add bridge=bridge comment=defconf interface=ether6 pvid=30
add bridge=bridge comment=defconf interface=ether7 pvid=30
add bridge=bridge comment=defconf interface=ether8 pvid=30
add bridge=bridge comment=defconf disabled=yes interface=sfp-sfpplus1
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface bridge vlan
add bridge=bridge comment=Admin tagged=bridge,ether1,ether3 untagged=ether4 \
    vlan-ids=30
add bridge=bridge comment=IoT tagged=bridge,ether1,ether4 vlan-ids=40
add bridge=bridge comment=Invitados tagged=bridge,ether1 vlan-ids=60
add bridge=bridge comment=Home tagged=bridge,ether1,ether4 vlan-ids=50
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=Internet-pppoe-out1 list=WAN
add comment=defconf interface=ether2 list=WAN
add interface=wireguard-rw list=LAN
add interface=Admin list=LAN
add interface=IoT list=ISOLATED
add interface=Invitados list=ISOLATED
add interface=wireguard-rw list=Wireguard_Interfaces
add interface=Home list=ISOLATED
/interface wireguard peers
add allowed-address=192.168.90.2/32 comment=PeerRW_MacbookPro interface=\
    wireguard-rw public-key="cegu2gm2IAcYAZhvzcIVIdAxreTF14UpZzKHgrZhoBI="
add allowed-address=192.168.90.3/32 comment=PeerRW_MovilJesus interface=\
    wireguard-rw public-key="39TJx/InDYvDbcfWzyRpQimRLyTN1GPtW+dTg93nBDY="
/ip address
add address=192.168.88.1/24 comment=defconf interface=bridge network=\
    192.168.88.0
add address=192.168.1.2/24 interface=ether2 network=192.168.1.0
add address=192.168.90.1/24 interface=wireguard-rw network=192.168.90.0
add address=192.168.30.1/24 interface=Admin network=192.168.30.0
add address=192.168.40.1/24 interface=IoT network=192.168.40.0
add address=192.168.60.1/24 interface=Invitados network=192.168.60.0
add address=192.168.50.1/24 interface=Home network=192.168.50.0
/ip cloud
set ddns-enabled=yes
/ip dhcp-server lease
add address=192.168.40.3 client-id=1:ec:71:db:aa:22:80 comment=\
    "Camara Entrada" mac-address=EC:71:DB:AA:22:80 server=dhcp-IoT
add address=192.168.40.14 comment="Shelly4PM_ Ba\F1os" mac-address=\
    84:CC:A8:7F:1E:37 server=dhcp-IoT
add address=192.168.40.13 client-id=1:84:cc:a8:7f:1e:33 comment=\
    "Shelly4PM_ Habitaciones" mac-address=84:CC:A8:7F:1E:33 server=dhcp-IoT
add address=192.168.30.2 client-id="Switch Netgear" comment="Switch Netgear" \
    mac-address=94:A6:7E:78:4F:5B server=dhcp-Admin
add address=192.168.30.3 client-id=1:70:a7:41:a6:53:29 comment=\
    "Unifi AP Salon" mac-address=70:A7:41:A6:53:29 server=dhcp-Admin
add address=192.168.30.4 client-id=1:70:a7:41:a6:4c:71 comment=\
    "Unifi AP Pasillo" mac-address=70:A7:41:A6:4C:71 server=dhcp-Admin
add address=192.168.40.12 client-id=1:84:cc:a8:7f:96:2f comment=\
    Shelly4PM_Pasillo/Entrada mac-address=84:CC:A8:7F:96:2F server=dhcp-IoT
add address=192.168.40.10 comment=Shelly4PM_Salon mac-address=\
    84:CC:A8:7F:97:E3 server=dhcp-IoT
add address=192.168.40.11 comment=Shelly4PM_Cocina mac-address=\
    84:CC:A8:7F:09:AF server=dhcp-IoT
add address=192.168.40.16 comment=ShellyEM_General+Vitro mac-address=\
    C4:5B:BE:6B:6E:0E server=dhcp-IoT
add address=192.168.40.17 comment="ShellyEM_Horno/Micro + Termo" mac-address=\
    C4:5B:BE:6A:8B:C4 server=dhcp-IoT
add address=192.168.40.15 comment="ShellyRGBW2_LED Salon" mac-address=\
    E8:DB:84:A7:E3:B2 server=dhcp-IoT
add address=192.168.40.18 comment="Shelly2.5_Estor Salon" mac-address=\
    C4:5B:BE:5F:32:AD server=dhcp-IoT
add address=192.168.40.19 comment=Shelly2.5_Persiana_HabMatrimonio \
    mac-address=C4:5B:BE:5F:A9:1E server=dhcp-IoT
add address=192.168.40.20 comment=Shelly2.5_Persiana_Hab2 mac-address=\
    C4:5B:BE:5F:B4:4C server=dhcp-IoT
add address=192.168.40.21 comment=Shelly2.5_Persiana_Hab3 mac-address=\
    98:CD:AC:1E:B4:2A server=dhcp-IoT
add address=192.168.40.22 comment=Shelly2.5_Persiana_Hab4 mac-address=\
    C4:5B:BE:5F:B5:C2 server=dhcp-IoT
add address=192.168.40.23 comment="Shelly2.5_Extractores_Ba\F1o" mac-address=\
    E8:DB:84:AC:E9:62 server=dhcp-IoT
add address=192.168.40.24 comment=ShellyPlus_Timbre mac-address=\
    A8:03:2A:BD:11:04 server=dhcp-IoT
add address=192.168.40.25 comment=ShellyPlus_Control_Termo mac-address=\
    A8:03:2A:BE:00:A4 server=dhcp-IoT
/ip dhcp-server network
add address=192.168.30.0/24 comment=Admin dns-server=192.168.30.1 gateway=\
    192.168.30.1
add address=192.168.40.0/24 comment=IoT dns-server=192.168.40.1 gateway=\
    192.168.40.1
add address=192.168.50.0/24 comment=Home dns-server=8.8.8.8,8.8.4.4 gateway=\
    192.168.50.1
add address=192.168.60.0/24 comment=Invitados dns-server=8.8.8.8,8.8.4.4 \
    gateway=192.168.60.1 netmask=32
add address=192.168.88.0/24 comment=defconf dns-server=192.168.88.1 domain=\
    lan gateway=192.168.88.1
/ip dns
set allow-remote-requests=yes servers=1.1.1.1,1.0.0.2,8.8.8.8
/ip dns static
add address=192.168.30.1 comment=defconf name=router.lan
/ip firewall address-list
add address=ec190fe5bfc5.sn.mynetname.net list=public-ip
/ip firewall filter
add action=accept chain=input comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=\
    invalid
add action=accept chain=input comment="defconf: accept ICMP" protocol=icmp
add action=accept chain=input comment=\
    "defconf: accept to local loopback (for CAPsMAN)" dst-address=127.0.0.1
add action=accept chain=input comment="vpn: allow wireguard-rw" dst-port=\
    12345 protocol=udp
add action=accept chain=input comment="DNS: Allow IoT to use DNS" dst-port=53 \
    in-interface=IoT protocol=udp
add action=drop chain=input comment="defconf: drop all not coming from LAN" \
    in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept in ipsec policy" \
    ipsec-policy=in,ipsec
add action=accept chain=forward comment="defconf: accept out ipsec policy" \
    ipsec-policy=out,ipsec
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" \
    connection-state=established,related hw-offload=yes
add action=accept chain=forward comment=\
    "defconf: accept established,related, untracked" connection-state=\
    established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" \
    connection-state=invalid
add action=drop chain=forward comment=\
    "defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat \
    connection-state=new in-interface-list=WAN
add action=reject chain=forward comment=\
    "Isolated VLANs: Can only access Internet" in-interface-list=ISOLATED \
    out-interface-list=!WAN reject-with=icmp-net-prohibited
/ip firewall mangle
add action=change-mss chain=forward comment=\
    "Adapta MTU para un Site-To-Site VPN Wireguard" disabled=yes new-mss=\
    clamp-to-pmtu out-interface-list=Wireguard_Interfaces passthrough=yes \
    protocol=tcp tcp-flags=syn
add action=change-ttl chain=postrouting comment=\
    "Cambia el TTL del paquete para reducir los saltos" disabled=yes \
    dst-address=192.168.30.2 new-ttl=set:64 passthrough=yes protocol=!icmp \
    src-address=192.168.90.0/24
/ip firewall nat
add action=masquerade chain=srcnat comment=hairpin-nat dst-address=\
    192.168.30.0/24 src-address=192.168.30.0/24
add action=masquerade chain=srcnat comment="defconf: masquerade" \
    ipsec-policy=out,none out-interface-list=WAN
add action=src-nat chain=srcnat comment="Peticiones desde Wireguard al Switch \
    Netgear (192.168.30.2) simulan venir desde el Router (192.168.30.1)" \
    disabled=yes dst-address=192.168.30.2 src-address=192.168.90.0/24 \
    to-addresses=192.168.30.1
/ip route
add comment=ruta-alternativa-HGU-multipuesto distance=2 gateway=192.168.1.1
/ipv6 firewall address-list
add address=::/128 comment="defconf: unspecified address" list=bad_ipv6
add address=::1/128 comment="defconf: lo" list=bad_ipv6
add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6
add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6
add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6
add address=100::/64 comment="defconf: discard only " list=bad_ipv6
add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6
add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6
add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6
/ipv6 firewall filter
add action=accept chain=input comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=\
    invalid
add action=accept chain=input comment="defconf: accept ICMPv6" protocol=\
    icmpv6
add action=accept chain=input comment="defconf: accept UDP traceroute" port=\
    33434-33534 protocol=udp
add action=accept chain=input comment=\
    "defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=\
    udp src-address=fe80::/10
add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 \
    protocol=udp
add action=accept chain=input comment="defconf: accept ipsec AH" protocol=\
    ipsec-ah
add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=\
    ipsec-esp
add action=accept chain=input comment=\
    "defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=input comment=\
    "defconf: drop everything else not coming from LAN" in-interface-list=\
    !LAN
add action=accept chain=forward comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" \
    connection-state=invalid
add action=drop chain=forward comment=\
    "defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6
add action=drop chain=forward comment=\
    "defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" \
    hop-limit=equal:1 protocol=icmpv6
add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=\
    icmpv6
add action=accept chain=forward comment="defconf: accept HIP" protocol=139
add action=accept chain=forward comment="defconf: accept IKE" dst-port=\
    500,4500 protocol=udp
add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=\
    ipsec-ah
add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=\
    ipsec-esp
add action=accept chain=forward comment=\
    "defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=forward comment=\
    "defconf: drop everything else not coming from LAN" in-interface-list=\
    !LAN
/system clock
set time-zone-name=Europe/Madrid
/system identity
set name=Mikrotik-Jesus
/system routerboard settings
set auto-upgrade=yes
/system script
add dont-require-permissions=no name=Cloud_Backup owner=admin policy=\
    ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source="#\
    \_Crear el backup\r\
    \n/system backup cloud upload-file action=create-and-upload password=MySup\
    3rB4ckup!\r\
    \n\r\
    \n#Descargar el backup en el propio equipo\r\
    \n/system backup cloud download-file action=download number=0\r\
    \n\r\
    \n#Borrar el backup, para dejar hueco al siguiente\r\
    \n/system backup cloud remove-file 0"
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN

Si esto está bien, ¿verías bien aplicar UPnP a la nueva VLAN Home? ¿O aún así ves bien crear una VLAN para consolas solo para el tema del UPnP?

Saludos y corrígeme si ves algo incorrecto, que espero que no!
 
Los puertos del router del 4 al 8 pertenecen todos a la vlan admin (30) ahora, y además son puertos que van con un "admin all" quiere decir, que se comportan como puertos híbridos (dejan pasar tanto tráfico taggeado como sin tag). Intenta que los puertos sean siempre o de acceso (admit-only-untagged-and-priority-tagged) o trunk (admit-only-vlan-tagged), y usa los híbridos lo menos posible.

Los puertos de acceso (untagged) se declaran vía el PVID del puerto, no es necesario que los añadas a la tabla de VLAN, ya que lo harán ellos solos dinámicamente. No obsntate, no pasa nada porque lo hagas, hay gente a la que les gusta ponerlos porque se ve más visual el mapeo de puertos, pero podría inducir a error si el PVID es uno y el "untagged" es otro en la tabla de vlan. Ante discrepancia, siempre el PVID.

Dale un DNS manual al router, en lugar de esperar que se lo de el cliente pppoe/dhcp. En IP -> DNS -> Servers mete un par de DNS manuales, de esa manera el router siempre tendrá resolución de nombres y se podrá actualizar, incluso si la interfaz que te da internet no te provee de dns.

Con respecto a las listas de direcciones (Interfaces > Interface LIst) puedes hacer limpieza. No necesitas meter la interfaz wireguard en una lista para la regla de mangle de ajuste del MTU (a menos que montes un site to site con otro mikrotik, no la vas a neceistar) y puedes eliminar ya el bridge de la lista LAN. Relativo al bridge, puedes eliminar todo lo relativo a la subred 192.168.88.x (ip address, pool, dhcp server, dhcp network) ya que la vlan1 no se va a volver usar, tal y como tienes el setup. Otra cosa que me gusta hacer (y esto ya es más manía propia que otra cosa) es meter una lista de direcciones de administración (en tu caso 192.168.30.0/24 + 192.168.90.0/24) en IP -> Firewall -> Address list, y aceptar siempre en input ese tráfico, en lugar de meter la interfaz wireguard en la LAN, que como verás carece un poco de sentido (de hecho, incluso la lista LAN carecería de sentido y podrías poner directamente un drop generalista en input, una vez aceptadas las conexiones de la lista "admin").

También puedes hacer limpieza en la mangle, ya que no necesitas esas reglas. Y en el NAT tienes hairpin a medias, y creo que no lo usas ahora mismo, ¿puede ser?

Poco más, el equipo está bastante limpito.

Saludos!
 
Los puertos del router del 4 al 8 pertenecen todos a la vlan admin (30) ahora, y además son puertos que van con un "admin all" quiere decir, que se comportan como puertos híbridos (dejan pasar tanto tráfico taggeado como sin tag). Intenta que los puertos sean siempre o de acceso (admit-only-untagged-and-priority-tagged) o trunk (admit-only-vlan-tagged), y usa los híbridos lo menos posible.
Ok, todos puertos como puertos de acceso con "admit-only-untagged-and-priority-tagged", excepto el Ether4 que lo he dejado en "Admit all" porque ya sé que ahí irá pronto un Servidor al que quiero que le lleguen todas las VLAN menos la de Invitados, por lo que va la Admin (30) untagged, y Home (50) e IoT (40) tagged.

Los puertos de acceso (untagged) se declaran vía el PVID del puerto, no es necesario que los añadas a la tabla de VLAN, ya que lo harán ellos solos dinámicamente. No obsntate, no pasa nada porque lo hagas, hay gente a la que les gusta ponerlos porque se ve más visual el mapeo de puertos, pero podría inducir a error si el PVID es uno y el "untagged" es otro en la tabla de vlan. Ante discrepancia, siempre el PVID.
Quitado el Ether4 como untagged en la definición de VLAN 30 :)

Dale un DNS manual al router, en lugar de esperar que se lo de el cliente pppoe/dhcp. En IP -> DNS -> Servers mete un par de DNS manuales, de esa manera el router siempre tendrá resolución de nombres y se podrá actualizar, incluso si la interfaz que te da internet no te provee de dns.
Aquí me descuadras un poco, eso lo tenía ya configurado así
1673805790874.png


Con respecto a las listas de direcciones (Interfaces > Interface LIst) puedes hacer limpieza. No necesitas meter la interfaz wireguard en una lista para la regla de mangle de ajuste del MTU (a menos que montes un site to site con otro mikrotik, no la vas a necesitar) y puedes eliminar ya el bridge de la lista LAN.
Hecho! Borrada la lista "wireguard-interfaces", y también la regla de Mangle de ajuste del MTU porque de momento no voy a montar un Site-to-Site.

Relativo al bridge, puedes eliminar todo lo relativo a la subred 192.168.88.x (ip address, pool, dhcp server, dhcp network) ya que la vlan1 no se va a volver usar, tal y como tienes el setup.
Tal y como tengo el setup es cierto que no se va a volver a usar. Pero no quiero borrarla del todo, ya que si tengo algún problema con los Ubiquiti, estos solo se pueden adoptar con la VLAN por defecto. Tengo la cosa si tuviera que volver a activar la VLAN1 o quitar el VLAN filtering, tener la certeza que todo funcionará bien de forma temporal, mientras vuelvo a adoptar los Unifi.

Otra cosa que me gusta hacer (y esto ya es más manía propia que otra cosa) es meter una lista de direcciones de administración (en tu caso 192.168.30.0/24 + 192.168.90.0/24) en IP -> Firewall -> Address list, y aceptar siempre en input ese tráfico, en lugar de meter la interfaz wireguard en la LAN, que como verás carece un poco de sentido (de hecho, incluso la lista LAN carecería de sentido y podrías poner directamente un drop generalista en input, una vez aceptadas las conexiones de la lista "admin").
Aquí te agradecería algo de ayuda, ya que si bien sé meter las direcciones de administración en IP/Firewall/Address List, aún me pierdo un poco con el Firewall y no soy muy ducho con él aún.

También puedes hacer limpieza en la mangle, ya que no necesitas esas reglas. Y en el NAT tienes hairpin a medias, y creo que no lo usas ahora mismo, ¿puede ser?
He borrado la de ajuste de MTU. La otra de los saltos de TTL, me resulta muy interesante, pero la tengo deshabilitada. ¿Hay algún problema en mantener estas reglas deshabilitadas? Es para poder recordar su uso en un futuro, si me hicieran falta.

Poco más, el equipo está bastante limpito.

Saludos!
Confírmame cuando puedas lo del tema del UPnP, si sería correcto hacerlo directamente en la VLAN Home (lo cual sería ideal), o mejor crear una VLAN adicional solo para consolas.

Saludos y gracias!
 
Ok, todos puertos como puertos de acceso con "admit-only-untagged-and-priority-tagged", excepto el Ether4 que lo he dejado en "Admit all" porque ya sé que ahí irá pronto un Servidor al que quiero que le lleguen todas las VLAN menos la de Invitados, por lo que va la Admin (30) untagged, y Home (50) e IoT (40) tagged.
Perfecto

Aquí me descuadras un poco, eso lo tenía ya configurado así
Olvida lo del DNS, que lo tienes bien... no sé cómo miré el export.

Hecho! Borrada la lista "wireguard-interfaces", y también la regla de Mangle de ajuste del MTU porque de momento no voy a montar un Site-to-Site.
Esta, al igual que la del TTL, las puedes dejar ahí deshabilitadas, si quieres que te valgan de guía para futuros setup. Aunque, la del TTL, dudo que la uses con algo que no sea un módem LTE de la propia casa.

Tal y como tengo el setup es cierto que no se va a volver a usar. Pero no quiero borrarla del todo, ya que si tengo algún problema con los Ubiquiti, estos solo se pueden adoptar con la VLAN por defecto. Tengo la cosa si tuviera que volver a activar la VLAN1 o quitar el VLAN filtering, tener la certeza que todo funcionará bien de forma temporal, mientras vuelvo a adoptar los Unifi.
Como quieras. Simplemente modificando la definición del frame-types del bridge vuelve a aparecer la VLAN1 (cambias el "admit-only-vlan-tagged" por "admit-all" y verás que aparece como por arte de magia en la tabla de vlans del bridge). Con tener un par de puertos en el PVID por defecto (PVID=1), ya tendrías ese comportamiento, porque juraría que la adopción de los APs no necesita una IP como tal, simplemente estar comunicados en capa2 (en misma vlan "no vlan"). Pero como quieras, no se usa lo de la 88.x, pero tampoco molesta.

Aquí te agradecería algo de ayuda, ya que si bien sé meter las direcciones de administración en IP/Firewall/Address List, aún me pierdo un poco con el Firewall y no soy muy ducho con él aún.
En lugar de esto
Código:
/interface list member
add interface=wireguard-rw list=LAN

Haz mejor esto otro, es más correcto.
Código:
/ip firewall address-list
add list=admin address=192.168.30.0/24
add list=admin address=192.168.90.0/24
/ip firewall filter
add action=accept chain=input comment="admin: allow admin clients access to the router" \
    src-address-list=admin place-before=[find comment="defconf: drop all not coming from LAN"]

En un momento dado, incluso podrías modificar esa regla que dice "drop all not coming from LAN" (no permitas nada que no venga de la LAN) y cambiarla por un drop generalista, puesto que delante de este drop ya tendrías aceptada la conexión de la vlan admin (subred 192.168.30.0/24) y la VPN (192.168.90.0/24). Esto, para gustos, colores; cuanto más protejas el chain de input, mejor, pero ojo con estos cambios no te quedes tú mismo sin acceso al router (cuando los hagas, usa el botoncito de "safe mode", que revertirá los cambios si la cagas y te echas a ti mismo del equipo)

Dentro de la lista LAN deja únicamente la vlan de administración. Esta lista, además de en la regla de input del firewall, se usa también para cosas como el descubrimiento de vecinos o el mac-server (para que winbox se conecte vía MAC address, en lugar de IP)

Lo del UPnP sobre la vlan "Home" ahora estaría perfecto. Tal y como lo tienes, quedaría así:
Código:
/ip upnp
set enabled=yes
/ip upnp interfaces
add interface=Internet-pppoe-out1 type=external
add interface=Home type=internal

Saludos!
 
Perfecto


Olvida lo del DNS, que lo tienes bien... no sé cómo miré el export.


Esta, al igual que la del TTL, las puedes dejar ahí deshabilitadas, si quieres que te valgan de guía para futuros setup. Aunque, la del TTL, dudo que la uses con algo que no sea un módem LTE de la propia casa.


Como quieras. Simplemente modificando la definición del frame-types del bridge vuelve a aparecer la VLAN1 (cambias el "admit-only-vlan-tagged" por "admit-all" y verás que aparece como por arte de magia en la tabla de vlans del bridge). Con tener un par de puertos en el PVID por defecto (PVID=1), ya tendrías ese comportamiento, porque juraría que la adopción de los APs no necesita una IP como tal, simplemente estar comunicados en capa2 (en misma vlan "no vlan"). Pero como quieras, no se usa lo de la 88.x, pero tampoco molesta.


En lugar de esto
Código:
/interface list member
add interface=wireguard-rw list=LAN

Haz mejor esto otro, es más correcto.
Código:
/ip firewall address-list
add list=admin address=192.168.30.0/24
add list=admin address=192.168.90.0/24
/ip firewall filter
add action=accept chain=input comment="admin: allow admin clients access to the router" \
    src-address-list=admin place-before=[find comment="defconf: drop all not coming from LAN"]

En un momento dado, incluso podrías modificar esa regla que dice "drop all not coming from LAN" (no permitas nada que no venga de la LAN) y cambiarla por un drop generalista, puesto que delante de este drop ya tendrías aceptada la conexión de la vlan admin (subred 192.168.30.0/24) y la VPN (192.168.90.0/24). Esto, para gustos, colores; cuanto más protejas el chain de input, mejor, pero ojo con estos cambios no te quedes tú mismo sin acceso al router (cuando los hagas, usa el botoncito de "safe mode", que revertirá los cambios si la cagas y te echas a ti mismo del equipo)

Dentro de la lista LAN deja únicamente la vlan de administración. Esta lista, además de en la regla de input del firewall, se usa también para cosas como el descubrimiento de vecinos o el mac-server (para que winbox se conecte vía MAC address, en lugar de IP)

Lo del UPnP sobre la vlan "Home" ahora estaría perfecto. Tal y como lo tienes, quedaría así:
Código:
/ip upnp
set enabled=yes
/ip upnp interfaces
add interface=Internet-pppoe-out1 type=external
add interface=Home type=internal

Saludos!

Pues casi todas las sugerencias adoptadas, excepto la de cambiar la regla por defecto de "Drop all not coming from LAN" por una generalista, no me veo aún tan suelto para cambiar una regla tan importante.

Dándole vueltas al tema del Switch, se me ha ocurrido una cosa, aunque posiblemente no sea posible o recomendable hacerla. ¿Qué pasaría si para los clientes Wireguard uso el mismo rango de direcciones que se usa en Admin? Así, al estar en el mismo rango, creo que no tendría problema en acceder al Router (al menos sería cuestión de probarlo).

Por otro lado, el tema del Hairpin NAT, me has dicho que lo tengo a medias. ¿Qué me falta?
Seguí las instrucciones de Tips&Tricks para ello, y aunque ahora mismo no lo uso, creo que es necesario si uso un Proxy Inverso, que está en mi mente utilizarlo cuando monte el servidor.

Saludos!
 
Dándole vueltas al tema del Switch, se me ha ocurrido una cosa, aunque posiblemente no sea posible o recomendable hacerla. ¿Qué pasaría si para los clientes Wireguard uso el mismo rango de direcciones que se usa en Admin? Así, al estar en el mismo rango, creo que no tendría problema en acceder al Router (al menos sería cuestión de probarlo).
No, esto no es para nada recomendable. Pruébalo si quieres, pero te digo desde ya que buena idea no es. Las interfaces han de tener IP's distintas, no debes poner la misma IP en más de una interfaz.
Por otro lado, el tema del Hairpin NAT, me has dicho que lo tengo a medias. ¿Qué me falta?
Seguí las instrucciones de Tips&Tricks para ello, y aunque ahora mismo no lo uso, creo que es necesario si uso un Proxy Inverso, que está en mi mente utilizarlo cuando monte el servidor.
Te faltaría la apertura de algún puerto en cuestión que use "public-ip" com filtro. Sin eso, el hairpin no vale par nada.

Saludos!
 
Arriba