Hello,
i have a CHR on cloud and monitor my customer’s mikrotik.
so basically on CHR i have an sstp server and on customer i add an sstp client.
works all fine.
now i have a customer with 2 WAN (primary + LTE)
so on CHR i create a rule to forward a secondary sstp server port to real.
for example sstp server port is 443 , i create a nat rule (dst nat) 444 to 443
in other words i have 2 ports with same sstp server.
on customer side
i have a classical sstp client with port 443 that works with primary connection and works fine. (sstp-client1)
i create a second sstp client with port 444 (sstp-client2)
for “force” secondary sstp client to LTE i use mangle rules + routing table
/ip route
add comment="FORCED LTE" distance=50 dst-address=0.0.0.0/0 gateway=10.93.188.255 \
routing-table=_force_LTE
/routing table
add disabled=no fib name=_force_LTE
of course i script for changing gateway (dynamic) and works
then i use mangle rules
/ip firewall mangle
add action=mark-routing chain=output comment=\
"sstp force LTE" dst-address-list=sstp-force-LTE \
dst-port=444 new-routing-mark=_force_LTE passthrough=yes protocol=tcp
add action=mark-connection chain=input comment=\
"MANGLE INPUT PER INCOMING CONN FAILOVER" in-interface=vlan_LTE \
new-connection-mark=incoming_LTE passthrough=yes
add action=mark-routing chain=output comment=\
"MANGLE OUTPUT PER INCOMING CONN FAILOVER" connection-mark=\
incoming_LTE new-routing-mark=_force_LTE passthrough=yes
add action=mark-connection chain=forward comment=\
"MANGLE INPUT PER INCOMING CONN FAILOVER" in-interface=vlan_LTE \
new-connection-mark=incoming_LTE passthrough=yes
add action=mark-routing chain=prerouting comment=\
"MANGLE OUTPUT PER INCOMING CONN SU FAILOVER" connection-mark=\
incoming_LTE in-interface-list=LAN new-routing-mark=_force_LTE \
passthrough=yes
/ip firewall address-list
add address=my.sstpserver.tld list=sstp-force-LTE
seems work but when LTE is down i can see (on CHR) sstp-client2 connected with primary wan.
because route is invalid i think…
so i thinked to block connections on port 444 from NOT LTE interface.
/ip firewall filter
add action=drop chain=output comment=\
"DROP SSTP 444 FROM NOT LTE" disabled=no \
dst-address-list=sstp-force-LTE dst-port=444 out-interface=!vlan_LTE \
protocol=tcp
ok now
sstp-client1 can connect fine on sstp server (and is normal)
sstp-client2 can’t connect… i see in log
sstp-client2: terminating… - unable to connect
ecc…
but if i disable filter rules and LTE is online , sstp-client2 can connect to sstp server with LTE connection.
i double check, in connections (on customer side) and ip in ppp - active connections (on chr side)
in oter words my goal is be sure that primary connection is up and LTE is up…
on chr i have “the dude” with a TCP check on primary connection with public ipv4.
but LTE is CGNAT so i try to use this sstp-client2 , then check ping ip on chr/dude
but sstp-client2 is mandatory to use LTE.
thank you in advance