When I want to access a device that is behind a NAT from the outside world I would go to the router and set up port forwarding.
Now my question why does it work without configuring the router? For example it is possible to do port forwarding without configuring/accessing the router by going to Control Panel -> View Network Connections
Once In there I can see my router:
If I right click -> properties -> settings -> select services tab -> Add
then I am able to configure port forwarding as:
(My computer that is hosting a website inside my network has IP 192.168.0.5)
I know the basics of how a router works but I do not understand how this can be done without a helper server (tcp/udp punch holing) or vpn. What is my computer doing when I set up this option in order to enable port forwarding?
This can also be done on Linux this video (https://youtu.be/bjsu5sFbMos) shows how.