In the continuing deep-dive of Switching and Routing, as part of my networking class, I have been getting some hands-on experience with both learning about NAT and configuring those within a network.
Every device on a network, including the internet, needs to have an unique IP address, and these are in short demand (and growing even more so with all the gadgets we have!). IPv6 could alleviate that, but that shift isn’t happening quickly- after 20 years, IPv4 is still going strong. Enter NAT, which helps to provide a solution.

We only need a public registered IP address for the NAT router itself- all of the private IP addresses within the private network are mapped to that single IP address. These private addresses can use these ranges which have been set aside for just that purpose:


The client at 192.168.1.10 can send a request to the internet and that request packet will go to the gateway route: 192.168.1.1, the interface of the NAT router facing the internal network. The NAT router will then forward that request to the public network using it’s public-facing interface with IP address 137.65.7.2; that is the IP address that is part of that paid-for, scarce IP address pool. Any response from the public network will be directed to that same IP address (137.65.7.2) and the NAT Router, packet in hand, will understand that the original requester was 192.168.1.10 and send it there.