So, my Mikrotik router is behind my ISP’s modem. I have set up an OVPN server, enabled Cloud DDNS, but my Android client cannot connect.
No error logs in Mikrotik, nothing, just connection timeout on my phone.
I tried almost everything, tried different ports, tried different configurations in RouterOS, opened ports in the ROS firewall and nothing.
It seems that my ISP’s modem is blocking incoming connections, that aren’t responses initiated by my IP.
I also have a local LAN bridge in ROS, but I am unsure if I can bridge the router and the modem. I do not have access to the modem, but I observed that when I delete the local bridge in ROS, I have differently named LAN connection which is not the same name when I connect directly to the modem via LAN.
Also, my modem is responding to pings, so maybe ICMP tunneling could be setup?
Have you got a modem from your ISP or a router?
When you plug in the WAN port of the Mikrotik to the ISP modem/router, how do you get an IP address and is it in the Private IP range?
If the ISP device is a combined modem/router, you’d need to forward the OpenVPN port from the ISP device to the Mikrotik.
If that is not correct, you should probably post your Mikrotik config using
Spynappels, I do not have access to the ISP modem+router device, because the ISP blocked access with a password. I do not know the password. It is a Cisco device.
The port is probably not forwarded.
The only option you have if having a VPN connection is required is to create a VPN server on a cloud server, and then connect both your Mikrotik and Android to it and route the traffic from your Android to the Mikrotik via the cloud VPN server.
This would work as you are able to make outbound VPN connections from the Mikrotik, it’s incoming connections that are the problem.
Normal OpenVPN uses UDP rather than TCP by default, but Mikrotik’s implementation is somewhat lacking.
If you are sure that some ports are forwarded to your private IP you could run the VPN server on some other port, but that may be hit and miss as your IP address will change dynamically everytime your LTE drops and reconnects for any reason.
Reverse tunnelling might be an option but sustaining an SSH tunnel from your Mikrotik to your Android continually for the odd time ou need to reverse access the Mikrotik is probably overkill, especially when you could run a DigitalOcean droplet for $5 per month, have a permanently on Wireguard connection from your Mikrotik to it, and then dial from the Android to it and route through to the Mikrotik when you need to.