Visibilidad nula entre redes

Buenos días, soy nuevo en este foro, aunque desde hace algún tiempo que os leo muchísimo, y prácticamente todo lo que he aprendido de Mikrotik ha sido gracias a vosotros y este magnífico sitio. Ahora estoy en un apuro que quiero compartir con vosotros a ver si alguien sabe como solventarlo.

El caso es que, tengo un RB4011 furulando en un recinto que se compone de 5 villas de alquiler vacacional, al que, desde un principio me pidieron suministrar Internet a todas estas desde una única línea de fibra contratada, y claro, pensé que lo ideal para hacer algo así era poner un Router de Mikrotik que fuese capaz de administrar varias redes, separarlas entre sí y demás.

La verdad es que me costó muchísimo hacerlo solamente leyendo sin molestar a nadie, pero al final lo conseguí, aunque hace unos pocos días hice algo que compromete la seguridad de toda la red a nivel interno, puesto que quise optimizar el funcionamiento de todo aprovechando la Caché DNS del propio Mikrotik.

En un primer momento, en el Firewall puse unas pocas reglas que hacían lo que dice el título de este post, lograr que las redes no se vieran entre sí, ni siquiera poder hacer un ping de una a otra, después puse en los DHCP los DNS en bruto, sin consultar la caché del propio Router, y hasta ahí todo funcionaba bien.

Una vez que quise poner el Router como DNS en el DHCP, me quedé sin conexión en todas las redes, y me di cuenta de que fue porque estas redes no estaban en el Interface List de LAN, que, al ponerlas dentro de esta lista, volvió a funcionar Internet y comenzó a iluminarse la lista de la caché como un árbol de navidad. Hasta ahí todo perfecto, logré optimizar lo que quería, pero aquí llegó el otro problema.

Ahora que las redes están en la misma Interface List, pueden verse de nuevo, incluso con las reglas del Firewall que había puesto al inicio, que igualmente creo que siempre han estado mal, pero que en su momento me hicieron el apaño.

Lo que quiero es que las redes vuelvan a ser invisibles e inalcanzables unas a otras, al menos las de las villas entre sí, ya que quiero poder seguir accediendo a estas desde la red 192.168.100.0 y 192.168.200.0 que solo controlo yo.

Adjunto el export del Router a ver que os parece, sin más, gracias de antemano.

Código:
# aug/19/2022 08:50:01 by RouterOS 7.2.1
# software id = 
#
# model = RB4011iGS+
# serial number = 
/interface bridge
add comment=LAN name=bridge1
/interface ethernet
set [ find default-name=ether1 ] comment=WAN
set [ find default-name=ether2 ] comment=LAN
set [ find default-name=ether3 ] comment=LAN
set [ find default-name=ether4 ] comment=LAN
set [ find default-name=ether5 ] comment=LAN
set [ find default-name=ether6 ] comment="VILLA 1"
set [ find default-name=ether7 ] comment="VILLA 2"
set [ find default-name=ether8 ] comment="VILLA 3"
set [ find default-name=ether9 ] comment="VILLA 4"
set [ find default-name=ether10 ] comment="VILLA 5" poe-out=off
set [ find default-name=sfp-sfpplus1 ] comment=LAN
/interface wireguard
add comment=VPN listen-port=51820 mtu=1420 name=wireguard1
/interface vlan
add interface=ether1 name=vlan6 vlan-id=6
/interface pppoe-client
add add-default-route=yes comment=WAN disabled=no interface=vlan6 name=pppoe-out1 user=adslppp@telefonicanetpa
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface lte apn
set [ find default=yes ] ip-type=ipv4 use-network-apn=no
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=dhcp_pool10 ranges=192.168.10.2-192.168.10.99
add name=dhcp_pool20 ranges=192.168.20.2-192.168.20.99
add name=dhcp_pool30 ranges=192.168.30.2-192.168.30.99
add name=dhcp_pool40 ranges=192.168.40.2-192.168.40.99
add name=dhcp_pool50 ranges=192.168.50.2-192.168.50.99
add name=dhcp_pool100 ranges=192.168.100.2-192.168.100.99
/ip dhcp-server
add address-pool=dhcp_pool10 interface=ether6 name=dhcp10
add address-pool=dhcp_pool20 interface=ether7 name=dhcp20
add address-pool=dhcp_pool30 interface=ether8 name=dhcp30
add address-pool=dhcp_pool40 interface=ether9 name=dhcp40
add address-pool=dhcp_pool50 interface=ether10 name=dhcp50
add address-pool=dhcp_pool100 interface=bridge1 name=dhcp100
/port
set 0 name=serial0
set 1 name=serial1
/interface bridge port
add bridge=bridge1 ingress-filtering=no interface=ether2
add bridge=bridge1 ingress-filtering=no interface=ether3
add bridge=bridge1 ingress-filtering=no interface=ether4
add bridge=bridge1 ingress-filtering=no interface=ether5
add bridge=bridge1 ingress-filtering=no interface=sfp-sfpplus1
/ip neighbor discovery-settings
set discover-interface-list=LAN
/ip settings
set max-neighbor-entries=8192
/ipv6 settings
set disable-ipv6=yes max-neighbor-entries=8192
/interface list member
add interface=ether1 list=WAN
add interface=bridge1 list=LAN
add interface=wireguard1 list=LAN
add interface=pppoe-out1 list=WAN
add interface=vlan6 list=WAN
add interface=ether6 list=LAN
add interface=ether7 list=LAN
add interface=ether8 list=LAN
add interface=ether9 list=LAN
add interface=ether10 list=LAN
/interface ovpn-server server
set auth=sha1,md5
/interface wireguard peers
add allowed-address=192.168.200.2/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.3/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.4/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.5/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.6/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.7/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.8/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.9/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.10/32 interface=wireguard1 public-key="="
add allowed-address=192.168.200.11/32 interface=wireguard1 public-key="="
/ip address
add address=192.168.10.1/24 interface=ether6 network=192.168.10.0
add address=192.168.20.1/24 interface=ether7 network=192.168.20.0
add address=192.168.30.1/24 interface=ether8 network=192.168.30.0
add address=192.168.40.1/24 interface=ether9 network=192.168.40.0
add address=192.168.50.1/24 interface=ether10 network=192.168.50.0
add address=192.168.100.1/24 interface=bridge1 network=192.168.100.0
add address=192.168.200.1/24 interface=wireguard1 network=192.168.200.0
/ip cloud
set ddns-enabled=yes ddns-update-interval=10m
/ip dhcp-server network
add address=192.168.10.0/24 dns-server=192.168.10.1 gateway=192.168.10.1
add address=192.168.20.0/24 dns-server=192.168.20.1 gateway=192.168.20.1
add address=192.168.30.0/24 dns-server=192.168.30.1 gateway=192.168.30.1
add address=192.168.40.0/24 dns-server=192.168.40.1 gateway=192.168.40.1
add address=192.168.50.0/24 dns-server=192.168.50.1 gateway=192.168.50.1
add address=192.168.100.0/24 dns-server=192.168.100.1 gateway=192.168.100.1
/ip dns
set allow-remote-requests=yes servers=8.8.8.8,8.8.4.4 use-doh-server=https://dns.google/dns-query verify-doh-cert=yes
/ip dns static
add address=192.168.100.1 comment=defconf name=router.lan
/ip firewall filter
add action=drop chain=input comment="drop remote DNS request" dst-port=53 in-interface-list=WAN protocol=udp
add action=drop chain=input comment="drop remote DNS request" dst-port=53 in-interface-list=WAN protocol=tcp
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=WireGuard dst-port=51820 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=drop chain=forward comment="VILLA 1" in-interface=ether6 out-interface=all-ethernet
add action=drop chain=forward comment="VILLA 2" in-interface=ether7 out-interface=all-ethernet
add action=drop chain=forward comment="VILLA 3" in-interface=ether8 out-interface=all-ethernet
add action=drop chain=forward comment="VILLA 4" in-interface=ether9 out-interface=all-ethernet
add action=drop chain=forward comment="VILLA 5" in-interface=ether10 out-interface=all-ethernet
/ip firewall nat
add action=masquerade chain=srcnat out-interface=pppoe-out1
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www address=192.168.100.0/24,192.168.200.0/24
set ssh disabled=yes
set api disabled=yes
set winbox address=192.168.100.0/24,192.168.200.0/24
set api-ssl disabled=yes
/system clock
set time-zone-autodetect=no time-zone-name=Atlantic/Canary
/system ntp client
set enabled=yes
/system ntp client servers
add address=es.pool.ntp.org
/system resource irq rps
set sfp-sfpplus1 disabled=no
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
 
Buenos días @WilmerM91, bienvenido al foro.

Una pregunta: ¿cómo transportas internet a cada una de las casitas? ¿Van todas cableadas al router principal, y en ella montas APs? ¿Tienes también mikrotik en los APs? Quizá te replantee de cero la configuración, por eso lo pregunto.

Dibújame el esquema de interconexión y todos los dispositivos que conforman la red troncal (la de acceso imagino que son tus clientes que visitan el resort).

Y sí, esa configuración e muy mejorable, además partiendo de la propia config por defecto del router.

Saludos!
 
Perdón por la tardanza, estaba con el esquema todo este rato, aquí te lo dejo.


Esquema Red.png



Equipos:

1 x HGU Movistar
1 x Mikrotik RB4011iGS+
5 x HPE OfficeConnect Switch 1820 24G J9980A
10 x Ubiquiti UniFi UAP-AC-LR

Los equipos adquieren todos su IP con el DHCP del Mikrotik, solo que no los he incluido en el export para que no te haga bulto al leerlo.

Por cuestiones de presupuesto, falta de stock y variaciones en la obra, no he podido poner los Switch de UniFi, que me habrían gustado más, pero de momento con esto va que chuta.
 
Tienes un setup muy decente, descuida. Yo. hubiera preferido montar routers pequeñitos (router + AP), también Mikrotik, y que las interfaces inalámbricas las controlases vía CAPsMAN con el 4011. Pero descuida, que se puede trabajar igualmente con lo que tienes.

Yo movería tu setup a usar VLANs. Chutaría una VLAN por cada casa y otra común para administración o acceso público. En cuanto saque un rato te mando un planteamiento para hacer la migración.

Saludos!
 
La verdad es que al ser la primera vez con Mikrotik, no me atreví a ponerlo todo de la misma marca, ya que tenía algo de experiencia con UniFi y tenía que poner todo en marcha lo antes posible sin tiempo de aprender mucho... vamos que fue poner a rodar el RB4011 y gracias!

Lo de las VLAN, es precisamente lo que quería hacer desde el principio, pero no tengo del todo claro como van en estos equipos, desde que puedas le metemos mano, es algo que está en producción y no me puedo permitir fallos, aunque igual hay alguna villa vacía y probamos con esa, que si ocurre algo me puedo desplazar al sitio en 20 mins. El Mikrotik está junto con el HGU en un RITU a la entrada del recinto.

Un saludo!
 
Vale, como ya tienes el equipo en producción, no vamos a liarnos a tocar algo que podamos romper. El problema se soluciona ejecutando el siguiente código, que paso a explicarte a continuación.
Código:
/interface list
add name=VILLAS

/interface list member
remove [find interface=ether1]
remove [find interface=wireguard1]
remove [find interface=vlan6]
set [find interface=ether6] list=VILLAS
set [find interface=ether7] list=VILLAS
set [find interface=ether8] list=VILLAS
set [find interface=ether9] list=VILLAS
set [find interface=ether10] list=VILLAS

/ip firewall filter
remove [find]
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="vpn: allow wireguard" dst-port=\
    51820 protocol=udp
add action=accept chain=input comment="vpn: allow wg admin clients" \
    src-address=192.168.200.0/24
add action=accept chain=input comment="villas: can access router DNS" \
    dst-port=53 protocol=udp in-interface-list=VILLAS
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="villas: can only access internet" \
    in-interface-list=VILLAS out-interface-list=!WAN reject-with=\
    icmp-net-prohibited

Básicamente:
- Crear una nueva lista llamada VILLAS
- Reasignar correctamente los miembros de las listas: LAN es sólo el bridge, WAN es sólo el PPPoE, y el resto (puertos 6-10) son VILLAS.
- Borrar todo el firewall y aplicar el que te mando, que, sobre el original, añade: acepta la conexión de wireguard, acepta la subred 200 entera con acceso al chain de input (desde cualquier equipo en esa subred vas a poder llegar al router) y, para las villas, hace dos cosas: permitir que accedan al chain de input, pero sólo al DNS, e impedir que tengan ningún tipo de comunicación con nada que no sea internet. Los equipos dentro de cada subred se verán entre sí, puesto que para eso no pasan por el firewall.

A futuro, te planteo:
- Implementar VLANs
- Separar el tráfico de acceso (lo que le entregas a cada villa) del la infraestructura (lo que une router, switch y APs), tal que los inquilinos jamás vean ningún componente de la red.
- Repensar por completo la red. ¿De verdad los clientes de la Villas necesitan una subred por Villa? ¿comparten algo dentro de cada villa, o simplemente necesitan "internet"?

Antes de tocar el router, haz backup y export de lo que tienes, no la vayamos a liar.

Saludos!
 
Arriba