MANUAL: Mikrotik, WireGuard VPN a fondo (RW + STS)

Le puedes hacer una trampa con una regla de srcnat para que las peticiones que vengan de la subred wireguard, y con destino el pi-hole, transformen su IP por la del router, por ejemplo, dentro del rango LAN ronde tengas el pi-hole. Así sí podrías hacerlo, aunque como contrapunto tienes que todas las peticiones dns, en los logs del pi-hole, parecerá que vengan del propio router.

Saludos!
Ok Pokoyo, lo voy a dejar tal cual, no vaya ser que me líe :)
 
Buenas tardes, a ver si alguien con más conocimientos que yo puede pegarle un vistazo al tinglado que he montado.
A groso modo, he creado una config para un router viajero basado en la config de RW. Aplicada a un router para conectarlo a cualquier sitio que de salida a internet por wifi o por cable, estando detrás de firewall o sin el, y dar servicio a mis dispositivos desde este router viajero y que todo salga por wireguard conectado a casa.

La conexión se establece perfectamente y todo funciona, mi duda es más de enrutamiento que a pesar de que todo funciona, no acabo de quedar a gusto con ello.

Los rangos son estos:
192.168.123.0/24 - Rango router viajero.
10.1.2.0/24 - Rango local.
192.168.50.0/30 - Rango wireguard.

Entonces hago rutas y enmascaramiento para 0.0.0.0/0 y 10.1.2.0/24 para llegar a internet y el rango local desde detrás del router viajero.
¿esto es correcto, se puede hacer mejor?

Código:
/ip route
add comment="WAN - WG" disabled=no distance=1 dst-address=0.0.0.0/0 \
    gateway=192.168.50.1 pref-src=0.0.0.0 routing-table=main scope=30 \
    suppress-hw-offload=no target-scope=10
add comment=WG disabled=no distance=1 dst-address=10.1.2.0/24 gateway=\
    192.168.50.1 pref-src="" routing-table=main scope=30 suppress-hw-offload=\
    no target-scope=10

/ip firewall nat
add action=masquerade chain=srcnat comment="WAN - WG" out-interface=\
    WG
add action=masquerade chain=srcnat comment=WG dst-address=10.1.2.0/24

Hago el tracert a google y los saltos cuadran, pero me mosquea el hecho de que dinamicamente el router crea una ruta dinámica 0.0.0.0/0 por la ip de gateway al que está conectado WAN siempre, que es lógico porque debe saber por donde establecer el tunel, pero...
 
Buenas tardes, a ver si alguien con más conocimientos que yo puede pegarle un vistazo al tinglado que he montado.
A groso modo, he creado una config para un router viajero basado en la config de RW. Aplicada a un router para conectarlo a cualquier sitio que de salida a internet por wifi o por cable, estando detrás de firewall o sin el, y dar servicio a mis dispositivos desde este router viajero y que todo salga por wireguard conectado a casa.

La conexión se establece perfectamente y todo funciona, mi duda es más de enrutamiento que a pesar de que todo funciona, no acabo de quedar a gusto con ello.

Los rangos son estos:
192.168.123.0/24 - Rango router viajero.
10.1.2.0/24 - Rango local.
192.168.50.0/30 - Rango wireguard.

Entonces hago rutas y enmascaramiento para 0.0.0.0/0 y 10.1.2.0/24 para llegar a internet y el rango local desde detrás del router viajero.
¿esto es correcto, se puede hacer mejor?

Código:
/ip route
add comment="WAN - WG" disabled=no distance=1 dst-address=0.0.0.0/0 \
    gateway=192.168.50.1 pref-src=0.0.0.0 routing-table=main scope=30 \
    suppress-hw-offload=no target-scope=10
add comment=WG disabled=no distance=1 dst-address=10.1.2.0/24 gateway=\
    192.168.50.1 pref-src="" routing-table=main scope=30 suppress-hw-offload=\
    no target-scope=10

/ip firewall nat
add action=masquerade chain=srcnat comment="WAN - WG" out-interface=\
    WG
add action=masquerade chain=srcnat comment=WG dst-address=10.1.2.0/24

Hago el tracert a google y los saltos cuadran, pero me mosquea el hecho de que dinamicamente el router crea una ruta dinámica 0.0.0.0/0 por la ip de gateway al que está conectado WAN siempre, que es lógico porque debe saber por donde establecer el tunel, pero...
Yo lo haría así:
Ruta por defecto: 0.0.0.0/0, gateway = donde sea que te conectes (ruta automática, la que se crea sola). Que la cree el puerto lan o la interfaz wifi, lo que sea que haga de WAN.

Y luego, para enrutar todo tráfico vía la VPN, haría esto:
Código:
# Añades una nueva routing table, de tipo fib
/routing table
add name=vpn fib

# Añades una regla de routeo, de la LAN del router roaming, para mandar el tráfico de ahí por la VPN
/routing rule
add action=lookup src-address=192.168.123.0/24 table=vpn

# Creamos una ruta por defecto, sólo para la tabla VPN (wireguard1 = interfaz del router roaming)
/ip route
add gateway=wireguard1 routing-table=vpn

Saludos!
 
Yo lo haría así:
Ruta por defecto: 0.0.0.0/0, gateway = donde sea que te conectes (ruta automática, la que se crea sola). Que la cree el puerto lan o la interfaz wifi, lo que sea que haga de WAN.

Y luego, para enrutar todo tráfico vía la VPN, haría esto:
Código:
# Añades una nueva routing table, de tipo fib
/routing table
add name=vpn fib

# Añades una regla de routeo, de la LAN del router roaming, para mandar el tráfico de ahí por la VPN
/routing rule
add action=lookup src-address=192.168.123.0/24 table=vpn

# Creamos una ruta por defecto, sólo para la tabla VPN (wireguard1 = interfaz del router roaming)
/ip route
add gateway=wireguard1 routing-table=vpn

Saludos!

La ruta de gateway dinámica se crea sobre wan, tengo metido en el wlan1,eth1 y lte1, y que lo que le pongas y esté disponible salga por el.

Algo parecido a las reglas que pone acabé haciendo ayer, porque estaba viendo que solo las peticiones iban por wireguard, el resto acababa saliendo por la wan sin cifrar.

Siquiendo este hilo: https://forum.mikrotik.com/viewtopic.php?p=924047, pero hacen un prerouting con mangle en lugar de una regla. ¿mejor/peor?
Código:
/routing table add fib name=via-wg
/ip firewall mangle add action=mark-routing chain=prerouting src-address=192.168.88.200 new-routing-mark=via-wg
/ip firewall nat add action=masquerade chain=srcnat out-interface=10.13.13.3 // my local wireguard IP
/ip route add gateway=10.13.13.1@main routing-table=via-wg  // remote wireguard IP

Pero no ha acabado funcionando bien hasta que he desactivado la regla de fasttrack estándar del firewall, supongo como en gatway de red y el gateway de wg están a distancia 1 pues hace de las suyas.

Otras reglas que no se como enfocar esto son las de masquerade. Tengo tres, la de enmascaramiento para la WAN, la de enmascaramiento para la WAN por WG y la de enmascaramiento para la subred 10.1.2.0/24 que está en el router remoto.
La de la subred lo veo ok, pero las de la WAN y WAN WG ¿me sobra una, no?
 
La ruta de gateway dinámica se crea sobre wan, tengo metido en el wlan1,eth1 y lte1, y que lo que le pongas y esté disponible salga por el.
Para para para, que la vas a liar. La ruta por defecto que se cree automática, dependiendo de quién te de el servicio. NO metas interfaces en las rutas, a menos que sean punto a punto (tipo PPPoE) o la vas a liar parda con la tabla ARP. La ruta por defecto, que se cree solita. Lo que sí que puedes hacer es meter las interfaces que has dicho en la lista WAN, para que el firewall y el NAT no haya que tocarlo. Pero, la ruta, que se cree en automático, con DHCP de la que sea la interfaz de salida a internet.

Con la solución que te doy sólo habría dos rutas: la automática, y la estática de la nueva tabla de routeo "vpn".

Siquiendo este hilo: https://forum.mikrotik.com/viewtopic.php?p=924047, pero hacen un prerouting con mangle en lugar de una regla. ¿mejor/peor?
Es lo mismo, pero usas mangle, así que jodes el fasttrack. Así que creo que ya te has contestado tú mismo.

Otras reglas que no se como enfocar esto son las de masquerade. Tengo tres, la de enmascaramiento para la WAN, la de enmascaramiento para la WAN por WG y la de enmascaramiento para la subred 10.1.2.0/24 que está en el router remoto.
La de la subred lo veo ok, pero las de la WAN y WAN WG ¿me sobra una, no?
Una única regla de masquerade, sobre la lista WAN (y en ella las interfaces que sea). Wireguard no se enmascara.

Saludos!
 
Pues después de hacer pruebas, con esto, en el momento de aplicar las reglas:
Código:
/routing rule
add action=lookup src-address=192.168.123.0/24 table=vpn

Al añadir la ruta:
Código:
/ip route
add gateway=wireguard1 routing-table=vpn

El router se fríe y no responde por IP, solo consigo atacarlo por MAC.
Una vez la deshabilitas, funciona de nuevo, lo gracioso es que DHCP sigue sirviendo.

Así funciona, pero me sigue rechinando deshabilitar el fasttrack:
Código:
/routing table
add disabled=no fib name=WG

/ip firewall filter
add action=fasttrack-connection chain=forward comment=fasttrack connection-state=established,related disabled=yes hw-offload=yes

/ip firewall mangle
add action=mark-routing chain=prerouting comment=WG new-routing-mark=WG passthrough=yes src-address=192.168.123.0/24

/ip firewall nat
add action=masquerade chain=srcnat comment=WG out-interface=WG

/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=WG pref-src=0.0.0.0 routing-table=WG scope=30 suppress-hw-offload=no target-scope=10

Lo voy a dejar reposar, porque algo se escapa.
 
Ponle como gateway la ip del otro extremo del túnel WG, en lugar de la interfaz, a ver si es eso.

Saludos!
 
¡¡Hola!!
¡Tengo un gran problema!

Lado A -> Haga ping a todo el equipo pero no acceda al lado B.
Lado B -> Haga ping a todos los dispositivos en A, acceda solo a 192.168.1.1

(192.168.1.1 es un servidor, tengo otros como 192.168.1.2, .3...)
Cualquier Ip tecleo en el lado B, automáticamente accede a 192.168.1.1

No sé qué hacer. Estoy perdido.

LADO A - 192.168.1.0/24
LADO B - 192.168.2.0/24


/interface bridge
add admin-mac=2C:C8:1B:C9:CE:5A auto-mac=no comment=defconf name=bridge
/interface wireguard
add listen-port=51820 mtu=1420 name=wireguard-sts
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=dhcp ranges=192.168.1.1-192.168.1.254
/ip dhcp-server
add address-pool=dhcp interface=bridge name=defconf
/port
set 0 name=serial0
/interface bridge port
add bridge=bridge comment=defconf interface=ether2
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=ether1 list=WAN
/interface wireguard peers
add allowed-address=172.16.1.2/32,192.168.2.0/24 endpoint-address=\
SIDEB-IP-ADDRESS endpoint-port=51820 interface=wireguard-sts public-key=\
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX="
/ip address
add address=192.168.1.254/24 comment=defconf interface=bridge network=\
192.168.1.0
add address=192.168.15.178/24 interface=ether1 network=192.168.15.0
add address=172.16.1.1/30 interface=wireguard-sts network=172.16.1.0
/ip cloud
set ddns-enabled=yes ddns-update-interval=1m
/ip dhcp-client
add comment=defconf disabled=yes interface=ether1
/ip dhcp-server network
add address=192.168.1.0/24 comment=defconf dns-server=208.67.222.222 gateway=\
192.168.1.254 netmask=24
/ip dns
set allow-remote-requests=yes servers=208.67.222.222,9.9.9.9,8.8.8.8
/ip dns static
add address=192.168.1.254 comment=defconf name=router.lan
/ip firewall filter
add action=accept chain=input comment=\
"defconf: accept established,related,untracked" connection-state=\
established,related,untracked
add action=accept chain=input comment="vpn: allow wireguard-sts" dst-port=51820 \
protocol=udp
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=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
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=\
out,none out-interface-list=WAN
add action=dst-nat chain=dstnat comment=04 dst-port=445 protocol=tcp \
to-addresses=192.168.1.1 to-ports=445
/ip route
add disabled=no distance=1 dst-address=192.168.2.0/24 gateway=172.16.1.2 \
pref-src=0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no \
target-scope=10
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set winbox address=192.168.1.0/24
set api-ssl disabled=yes
/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=America/Sao_Paulo
/system identity
set name=MK-Matriz
/tool bandwidth-server
set authenticate=no
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LA

/interface wireguard
add listen-port=51820 mtu=1420 name=wireguard-sts
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=dhcp ranges=192.168.2.10-192.168.2.254
/ip dhcp-server
add address-pool=dhcp interface=bridge name=defconf
/port
set 0 name=serial0
/interface bridge port
add bridge=bridge comment=defconf interface=ether2
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=ether1 list=WAN
/interface wireguard peers
add allowed-address=172.16.1.1/32,192.168.1.0/24 endpoint-address=\
IP-ADDRESS-LADO-A endpoint-port=51820 interface=wireguard-sts public-key=\
"WGCHAVE="
/ip address
add address=192.168.2.1/24 comment=defconf interface=bridge network=192.168.2.0
add address=192.168.15.132/24 interface=ether1 network=192.168.15.0
add address=172.16.1.2/30 interface=wireguard-sts network=172.16.1.0
/ip cloud
set ddns-update-interval=1m update-time=no
/ip dhcp-client
add comment=defconf disabled=yes interface=ether1
/ip dhcp-server network
add address=192.168.2.0/24 comment=defconf dns-server=192.168.2.1 gateway=\
192.168.2.1
/ip dns
set allow-remote-requests=yes servers=208.67.222.222,8.8.8.8
/ip dns static
add address=192.168.2.1 comment=defconf name=router.lan
/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-sts" 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
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=\
out,none out-interface-list=WAN
/ip route
add disabled=no distance=1 dst-address=192.168.1.0/24 gateway=172.16.1.1 \
pref-src=0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no \
target-scope=10
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set winbox address=192.168.2.0/24
set api-ssl disabled=yes
/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=America/Sao_Paulo
/system identity
set name=MK-Loja02
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
 
¡¡Hola!!
¡Tengo un gran problema!

Lado A -> Haga ping a todo el equipo pero no acceda al lado B.
Lado B -> Haga ping a todos los dispositivos en A, acceda solo a 192.168.1.1

(192.168.1.1 es un servidor, tengo otros como 192.168.1.2, .3...)
Cualquier Ip tecleo en el lado B, automáticamente accede a 192.168.1.1

No sé qué hacer. Estoy perdido.

LADO A - 192.168.1.0/24
LADO B - 192.168.2.0/24


/interface bridge
add admin-mac=2C:C8:1B:C9:CE:5A auto-mac=no comment=defconf name=bridge
/interface wireguard
add listen-port=51820 mtu=1420 name=wireguard-sts
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=dhcp ranges=192.168.1.1-192.168.1.254
/ip dhcp-server
add address-pool=dhcp interface=bridge name=defconf
/port
set 0 name=serial0
/interface bridge port
add bridge=bridge comment=defconf interface=ether2
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=ether1 list=WAN
/interface wireguard peers
add allowed-address=172.16.1.2/32,192.168.2.0/24 endpoint-address=\
SIDEB-IP-ADDRESS endpoint-port=51820 interface=wireguard-sts public-key=\
"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX="
/ip address
add address=192.168.1.254/24 comment=defconf interface=bridge network=\
192.168.1.0
add address=192.168.15.178/24 interface=ether1 network=192.168.15.0
add address=172.16.1.1/30 interface=wireguard-sts network=172.16.1.0
/ip cloud
set ddns-enabled=yes ddns-update-interval=1m
/ip dhcp-client
add comment=defconf disabled=yes interface=ether1
/ip dhcp-server network
add address=192.168.1.0/24 comment=defconf dns-server=208.67.222.222 gateway=\
192.168.1.254 netmask=24
/ip dns
set allow-remote-requests=yes servers=208.67.222.222,9.9.9.9,8.8.8.8
/ip dns static
add address=192.168.1.254 comment=defconf name=router.lan
/ip firewall filter
add action=accept chain=input comment=\
"defconf: accept established,related,untracked" connection-state=\
established,related,untracked
add action=accept chain=input comment="vpn: allow wireguard-sts" dst-port=51820 \
protocol=udp
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=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
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=\
out,none out-interface-list=WAN
add action=dst-nat chain=dstnat comment=04 dst-port=445 protocol=tcp \
to-addresses=192.168.1.1 to-ports=445
/ip route
add disabled=no distance=1 dst-address=192.168.2.0/24 gateway=172.16.1.2 \
pref-src=0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no \
target-scope=10
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set winbox address=192.168.1.0/24
set api-ssl disabled=yes
/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=America/Sao_Paulo
/system identity
set name=MK-Matriz
/tool bandwidth-server
set authenticate=no
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LA

/interface wireguard
add listen-port=51820 mtu=1420 name=wireguard-sts
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=dhcp ranges=192.168.2.10-192.168.2.254
/ip dhcp-server
add address-pool=dhcp interface=bridge name=defconf
/port
set 0 name=serial0
/interface bridge port
add bridge=bridge comment=defconf interface=ether2
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=ether1 list=WAN
/interface wireguard peers
add allowed-address=172.16.1.1/32,192.168.1.0/24 endpoint-address=\
IP-ADDRESS-LADO-A endpoint-port=51820 interface=wireguard-sts public-key=\
"WGCHAVE="
/ip address
add address=192.168.2.1/24 comment=defconf interface=bridge network=192.168.2.0
add address=192.168.15.132/24 interface=ether1 network=192.168.15.0
add address=172.16.1.2/30 interface=wireguard-sts network=172.16.1.0
/ip cloud
set ddns-update-interval=1m update-time=no
/ip dhcp-client
add comment=defconf disabled=yes interface=ether1
/ip dhcp-server network
add address=192.168.2.0/24 comment=defconf dns-server=192.168.2.1 gateway=\
192.168.2.1
/ip dns
set allow-remote-requests=yes servers=208.67.222.222,8.8.8.8
/ip dns static
add address=192.168.2.1 comment=defconf name=router.lan
/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-sts" 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
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=\
out,none out-interface-list=WAN
/ip route
add disabled=no distance=1 dst-address=192.168.1.0/24 gateway=172.16.1.1 \
pref-src=0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no \
target-scope=10
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set winbox address=192.168.2.0/24
set api-ssl disabled=yes
/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=America/Sao_Paulo
/system identity
set name=MK-Loja02
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
Tienes mal el firewall. Tienes “drops” metidos a cascoporro entre las reglas originales. En input, que te impedirán el acceso al router remoto, y en forward, que te impedirán cualquier comunicación entre subredes distintas.

Las reglas por defecto, se comportan así:
- En input (tráfico con destino el propio router): descartan todo lo que no venga de la LAN
- En forward (tráfico con origen o destino los usuarios de la LAN): de dentro a fuera todo permitido, de fuera a dentro sólo lo nateado.

Si metes drops en medio, vas a modificar el comportamiento por defecto y, por ende, tener que aceptar explícitamente los tráficos que quiera manejar.

Saludos!

Saludos!
 
@pokoyo
Gracias por estar siempre disponible para ayudar.
Pero no entiendo, soy un novato... Seguí tu guía para dejar el guión inicial después del reinicio. ¿Pueden mostrarme las reglas incorrectas o guiarme amablemente para corregirlas? Entiendo lo que dices, pero no sé cómo solucionarlo.
gracias... te debo un cafe
 
@pokoyo
Gracias por estar siempre disponible para ayudar.
Pero no entiendo, soy un novato... Seguí tu guía para dejar el guión inicial después del reinicio. ¿Pueden mostrarme las reglas incorrectas o guiarme amablemente para corregirlas? Entiendo lo que dices, pero no sé cómo solucionarlo.
gracias... te debo un cafe
Restaura la configuración por defecto, y compara las reglas del firewall. Verás que, en tu actual export, tienes reglas de drop que no están en la configuración original, y que sospecho has metido tú o quien sea que administre esos equipos. Son esas las que te están impidiendo que te funcione lo que pretendes montar.

Saludos!
 
Ponle como gateway la ip del otro extremo del túnel WG, en lugar de la interfaz, a ver si es eso.

Saludos!
Nada niño, y el problema está con la regla de routing, con el resto de reglas configuradas igual, me refiero a la tabla y a la ruta del gateway, pero usando mangle pues va bien:

Código:
/routing rule
add action=lookup src-address=192.168.123.0/24 table=WG

Si en la regla le indico routing mark la tabla WG sale por el gateway, pero desde la ignorancia, con esto entiendo que esta mirando tráfico de la tabla WG para ponerlo en la tabla WG, entonces no hace nada.
Ninguna de las dos funciona:
Código:
/routing rule
add action=lookup routing-mark=main src-address=192.168.123.0/24 table=WG

/routing rule
add action=lookup routing-mark=WG src-address=192.168.123.0/24 table=WG

Y si le digo que viene del bridge local mismo resultado.
Código:
/routing rule
add action=lookup interface=bridge src-address=192.168.123.0/24 table=WG

Vamos que parece que no marca el tráfico como para la tabla WG y cuando llega a la ruta del gateway no sabe que hacer.
 
Última edición:
No te sigo compi. El routing rule funciona perfectamente, de hecho lo tengo en casa para sacar la wifi de invitados por la conexión de respaldo.

Saludos!

... pues algo está mal en lo que hago.

Recapitulemos, tengo una tabla de rutas creada:

Código:
/routing table add fib name=WG

una regla que mira el rango de origen y lo marca en la tabla anteriormente creada:

Código:
/routing rule
add action=lookup src-address=192.168.123.0/24 table=WG

Y una ruta que le dice todo lo de esa tabla sale por WG:

Código:
/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=WG pref-src=0.0.0.0 routing-table=WG scope=30 suppress-hw-offload=no target-scope=10

Cuando esto está así el router no sabe que hacer con lo que llega desde la red local 192.168.123.0/24.

Lo mismo usando mangle (abajo), va bien. Lo único diferente es como se marca ese tráfico, usando mangle funciona, pero con routing rule no. Leyendo el manual, ¿no habría que usar "lookup-only-in-table"? (no lo puedo probar ahora, pero lo haré)
Código:
/routing rule
add action=lookup-only-in-table src-address=192.168.123.0/24 table=WG

/routing table
add disabled=no fib name=WG

/ip firewall filter
add action=fasttrack-connection chain=forward comment=fasttrack connection-state=established,related disabled=yes hw-offload=yes

/ip firewall mangle
add action=mark-routing chain=prerouting comment=WG new-routing-mark=WG passthrough=yes src-address=192.168.123.0/24

/ip firewall nat
add action=masquerade chain=srcnat comment=WG out-interface=WG

/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=WG pref-src=0.0.0.0 routing-table=WG scope=30 suppress-hw-offload=no target-scope=10
 
Tienes mal la ruta, en gateway no puedes poner la interfaz, tienes que poner la IP del otro extremo del túnel site to site. La ruta, ha de pintar tal que así en el export, considerando que dicha IP del otro extremo es la 172.16.0.1 y que tú tienes, por ejemplo la 172.16.0.2/30 en tu interfaz local
Código:
/ip route
add gateway=172.16.0.1 routing-table=WG

Y, para probarlo, no enrutes toda la subred, enruta sólo una IP, y cuando te funcione, lo haces con el resto. Es decir, en la routing rule, en lugar de src-address=192.168.123.0/24, le pones la IP concreta del equipo que quieras probar (src-address=192.168.123.7 por ejemplo), y pruebas.

Saludos!
 
Tienes mal la ruta, en gateway no puedes poner la interfaz, tienes que poner la IP del otro extremo del túnel site to site. La ruta, ha de pintar tal que así en el export, considerando que dicha IP del otro extremo es la 172.16.0.1 y que tú tienes, por ejemplo la 172.16.0.2/30 en tu interfaz local
Código:
/ip route
add gateway=172.16.0.1 routing-table=WG

Y, para probarlo, no enrutes toda la subred, enruta sólo una IP, y cuando te funcione, lo haces con el resto. Es decir, en la routing rule, en lugar de src-address=192.168.123.0/24, le pones la IP concreta del equipo que quieras probar (src-address=192.168.123.7 por ejemplo), y pruebas.

Saludos!

La regla exporta tal que así:
Código:
/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.50.1 pref-src=0.0.0.0 routing-table=WG scope=30 suppress-hw-offload=no target-scope=10

y está creada tal como pones
Código:
/ip route
add gateway=192.168.50.1 routing-table=WG

Y la regla así (he probado con 192.168.123.100 también):
Código:
/routing rule
add action=lookup comment=WG disabled=no src-address=192.168.123.0/24 table=WG

Con esto, desde el router llego haciendo ping a:
- 192.168.50.2 IP local wireguard.
- 192.168.50.1 IP endopoint wireguard.
- 10.1.2.1 IP gateway.
- google o lo que sea lo resuelve.

Desde la 192.168.123.100:
- 192.168.123.123 IP router local no responde.
- 192.168.50.2 IP local wireguard responde.
- 192.168.50.1 IP endopoint wireguard no responde.
- 10.1.2.1 IP gateway no responde
- google o lo que sea no resuelve.

esto ya me deja torcido, no resuelve la del gateway de su subred pero si la IP local de wireguard ¿?
 
La regla exporta tal que así:
Código:
/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.50.1 pref-src=0.0.0.0 routing-table=WG scope=30 suppress-hw-offload=no target-scope=10

y está creada tal como pones
Código:
/ip route
add gateway=192.168.50.1 routing-table=WG

Y la regla así (he probado con 192.168.123.100 también):
Código:
/routing rule
add action=lookup comment=WG disabled=no src-address=192.168.123.0/24 table=WG

Con esto, desde el router llego haciendo ping a:
- 192.168.50.2 IP local wireguard.
- 192.168.50.1 IP endopoint wireguard.
- 10.1.2.1 IP gateway.
- google o lo que sea lo resuelve.

Desde la 192.168.123.100:
- 192.168.123.123 IP router local no responde.
- 192.168.50.2 IP local wireguard responde.
- 192.168.50.1 IP endopoint wireguard no responde.
- 10.1.2.1 IP gateway no responde
- google o lo que sea no resuelve.

esto ya me deja torcido, no resuelve la del gateway de su subred pero si la IP local de wireguard ¿?
Dale un export completo, y mañana lo miro.

Saludos!
 
Dale un export completo, y mañana lo miro.

Saludos!

Le he pegado una vuelta a la config y medio me funciona.
He separado en dos bridges todo el tinglado, sobre uno te conectas directo y con el otro por la vpn con dos rangos 192.168.100.x sin vpn 192.168.101.x con vpn.
Ahora funciona bien, eso si he necesitado una regla de masquerade para el tráfico sin vpn y otra para el con, rangos de ip diferentes, si trato de hacer masquerade sin origen a WAN, solo funciona el tráfico sin vpn.
El único problema es que usando el bridge-wg, sale por el gateway a internet y la red remota, pero no puedo conectar con otras ip del mismo rango, no deja acceder a la gestión del router, pero si del router remoto. Parece que las IPs del rango 192.168.101.0/24 quedan al usar la tabla WG aisladas.

Te adjunto la export.

Código:
/interface bridge
add name=bridge
add name=bridge_wg
/interface wireguard
add listen-port=31221 mtu=1420 name=WG
/interface list
add name=WAN
add name=LAN
/interface wireless
set [ find default-name=wlan1 ] band=2ghz-b/g/n disabled=no frequency=2437 \
    security-profile="WLAN1" ssid="WLAN1" wireless-protocol=\
    802.11
set [ find default-name=wlan2 ] band=5ghz-a/n/ac channel-width=\
    20/40/80mhz-XXXX country=spain disabled=no frequency=auto installation=\
    indoor mode=ap-bridge security-profile=Viaxe ssid=Viaxe \
    wireless-protocol=802.11 wps-mode=disabled
add disabled=no keepalive-frames=disabled mac-address=2E:C8:1B:C9:11:FD \
    master-interface=wlan1 multicast-buffering=disabled name=Viaxe1 \
    security-profile=Viaxe ssid=viaxe wds-cost-range=0 wds-default-cost=0 \
    wps-mode=disabled
add disabled=no keepalive-frames=disabled mac-address=2E:C8:1B:C9:11:FE \
    master-interface=wlan1 multicast-buffering=disabled name=Viaxe_WG1 \
    security-profile=Viaxe ssid=Viaxe_WG wds-cost-range=0 wds-default-cost=0 \
    wps-mode=disabled
add disabled=no keepalive-frames=disabled mac-address=2E:C8:1B:C9:11:FE \
    master-interface=wlan2 multicast-buffering=disabled name=Viaxe_WG2 \
    security-profile=Viaxe ssid=Viaxe_WG wds-cost-range=0 wds-default-cost=0 \
    wps-mode=disabled
/ip pool
add name=dhcp ranges=192.168.100.50-192.168.100.200
add name=dhcp_wg ranges=192.168.101.50-192.168.101.200
/ip dhcp-server
add address-pool=dhcp interface=bridge name=lan
add address-pool=dhcp_wg interface=bridge_wg name=lan_wg
/routing table
add disabled=no fib name=WG
/interface bridge port
add bridge=bridge interface=ether2
add bridge=bridge interface=ether3
add bridge=bridge_wg interface=ether4
add bridge=bridge_wg interface=ether5
add bridge=bridge interface=Viaxe1
add bridge=bridge interface=wlan2
add bridge=bridge_wg interface=Viaxe_WG1
add bridge=bridge_wg interface=Viaxe_WG2
/interface list member
add interface=ether1 list=WAN
add interface=bridge list=LAN
add interface=wlan1 list=WAN
add list=WAN
add interface=bridge_wg list=LAN
/interface wireguard peers
add allowed-address=0.0.0.0/0 endpoint-address=wg.com endpoint-port=\
    31221 interface=WG public-key=\
    "xxxx"
/ip address
add address=192.168.100.1/24 comment=Lan interface=bridge network=\
    192.168.100.0
add address=192.168.50.2/30 comment=WG interface=WG network=\
    192.168.50.0
add address=192.168.101.1/24 comment=Lan_WG interface=bridge_wg network=\
    192.168.101.0
/ip dhcp-client
add interface=ether1
add interface=wlan1
/ip dhcp-server network
add address=192.168.100.0/24 dns-server=208.67.222.222,208.67.220.220 \
    gateway=192.168.100.1 netmask=24
add address=192.168.101.0/24 dns-server=208.67.220.220,208.67.220.220 \
    gateway=192.168.101.1 netmask=24
/ip firewall filter
add action=accept chain=input comment="accept established,related,untracked" \
    connection-state=established,related,untracked
add action=drop chain=input comment="drop invalid" connection-state=invalid
add action=add-src-to-address-list address-list="port scanners" \
    address-list-timeout=4w2d chain=input comment="Port scanners list" \
    protocol=tcp psd=21,3s,3,1
add action=drop chain=input comment="drop port scanners" src-address-list=\
    "port scanners"
add action=accept chain=input comment="accept icmp" limit=10,5:packet \
    protocol=icmp
add action=drop chain=input comment="drop all not coming from LAN" \
    in-interface-list=!LAN
add action=fasttrack-connection chain=forward comment=fasttrack \
    connection-state=established,related hw-offload=yes
add action=accept chain=forward comment=\
    "accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=forward comment="drop invalid" connection-state=invalid
add action=drop chain=forward comment="drop all from WAN not DSTNATed" \
    connection-nat-state=!dstnat connection-state=new in-interface-list=WAN
/ip firewall nat
add action=masquerade chain=srcnat comment=WAN ipsec-policy=out,none \
    out-interface-list=WAN src-address=192.168.100.0/24
add action=masquerade chain=srcnat comment=WG out-interface=WG \
    src-address=192.168.101.0/24
/ip route
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.50.1 \
    pref-src=0.0.0.0 routing-table=WG scope=30 suppress-hw-offload=no \
    target-scope=10
/routing rule
add action=lookup comment=WG disabled=no src-address=192.168.101.0/24 \
    table=WG


EDITO:
Para más datos, desde la 192.168.101.X, puedo acceder a gestionar el router por la 192.168.100.1 pero no por la 192.168.101.1.
El comportamiento es como si aislaras las IPs de la subred 192.168.101.0/24, las rutas funcionan pero no se ven entre los clientes.
 
Última edición:
Arriba