my router is cisco: 3800 series
WAN IP g0/0:123.123.123.4
Internal n/w fa0/0:192.168.0.4
webserver IP: 192.168.0.5
domainname: example.office.com (123.123.123.4)
I applied nat outside on g0/0 and nat inside on f0/0. NAT rules are:
ip nat inside source list 1 interface g0/0 overload
ip nat inside source static tcp 192.168.0.5 80 123.123.123.4 80
ip nat inside source static tcp 192.168.0.5 443 123.123.123.4 443
Inside the source list 1 i applied permit any any.
Problem :
By doing this i can able to access my website from outside of office network but when i am trying this from inside of office network i can't able to access, cisco router always redirect to SDM page, Please let me know what i am missing.
Adding one more point my webserver is running on SSL connection(https). On my router my dns is 8.8.8.8 and i am not using internal dns we have google dns inside our LAN network also.
As far as I am aware, NAT hairpinning in this manner is not supported in Cisco IOS routers. From a brief Google search, it appears there are a few possible workarounds however they may require some extra consideration.
If this is an issue because internal clients connect to the server via DNS, then you can "fix" the issue by using split DNS allowing you have different DNS resolution depending on whether the request is on the local network or over the internet.
For the reference: https://supportforums.cisco.com/discussion/12102421/nat-hairpinning
I didnt try this but this could solve the problem which questing is looking.
Otherwise there is two more Solution for this:
1. Either use local dns server to resolve the domain, or
2. Configure reverse proxy-server using public-IP (this could be a bit expensive for purchasing a new PublicIP cost) but their you dont need any local dns. Just configure proxy-server which can access your internal app-server.