connect to oracle db server remotely
What is probably happening is that you have a router that doesn't support NAT loopback or the router configuration isn't properly set up.

You can connect from the outside as proven by the fact that canyouseeme.org sees you, and you can VPN into it because TeamViewer connections come from TeamViewer servers (hence the outside), and you can also connect to the internal IP.

If you want transparent connections from the inside and the outside you would need to either set up DNS, so that in your internal LAN the hostname.yourdomain.org points to the internal IP and make sure that from the outside the same hostname points to your external IP or get a router that supports NAT loopback.

There is plenty to find if you google 'nat loopback connect to external ip from lan' or you might find this post on serverfault interesting: Loopback to forwarded Public IP address from local network - Hairpin NAT