NAT, or Network Address Translation, is unnecessarily tricky to define and explain. One of the big challenges is the fact that it is loosely used and often needs clarification. For example while NAT is an umbrella term that represents all types of IP address translation, it can also define a specific type of translation. Additionally, there are multiple ways to classify NAT, none of which are exclusive of each other.
Let’s start out by looking at different ways NAT configurations can be classified.
Categories of NAT
Type of Translation
- One to One (192.168.1.10->192.0.2.2)
- Also known as NAT (hence the confusion)
- One to Many (192.168.1.10/TCP/1231->192.0.2.2/TCP/1224)
- Also known as PAT (Port Address Translation)
How Translations are Created
- Static (created by an administrator)
- Dynamic (created by initial packet in a flow based on rules created by an administrator)
Any Combination May be Used
- Static, NAT
- Static, PAT
- Dynamic, NAT
- Dynamic, PAT
When the umbrella term NAT is used, it could be describing any of the above combinations. However NAT could also be used to specifically define one-to-one translations. If the terminology “PAT” is used, it is an acronym for Port Address Translation and clearly in reference to one-to-many. The confusion with the term NAT comes into play because some who hear or use the word NAT do so in the context of “one-to-one”. Others assume NAT describes all types of address translation. This double use of NAT forces those conversing to avoid assumptions and ask for clarity.
So why is this important enough to write about? For those who have been doing this for years, they get it. They understand the inner workings of different types of translations, know when to ask for clarity and are confident doing so. However, for those learning NAT, the multiple use cases for the terminology can make an already confusing topic more confusing. When conversing with those less experienced, I think that clarity is especially important. Some people won’t ask the question for fear of looking less intelligent. The result will certainly be more confusion about the topic or solution being discussed.