要成功的理解NAT,就必须理解NAT在翻译过程中所使用到的地址类型:内部本地地址、内部全局地址、外部本地地址、外部全局地址。
n内部本地地址:通常处于内部网络中分配给主机的某个私有专用IP地址,这个地址永远不会被宣告到公共网络上。
n内部全局地址:一个被公共网络认可的合法IP地址,简单的说,就是内部私有网络的主机被执行NAT翻译后,能够被公共网络所理解的地址,比如:在执行PAT翻译过程中的NAT路由器的外部接口IP地址202.202.1.1。
n外部本地地址:是NAT设备的外部访问内部时使用的地址,简单的讲就是外部主机在内部网络中表现出来的IP地址,该地址通常以私有网络专用地址体现。出于某一种特殊的应用,外部的主机需要访问内部主机,但是网络管理员不想让外部主机进入内部网络时,使用公共网络的IP地址,要求使用管理员订制的内部IP。比如:202.202.1.2进入内部网络时,管理员希望202.202.1.2的主机以192.168.2.50存在于内部网络上,此时192.168.2.50就是外部本地地址。
n外部全局地址:它是一个公共网络主机的IP地址,该地址被分配给NAT的外部网络,它永远不会被宣告给NAT的内部网络。
注意:估计只根据上述的文字描述来理解NAT的四种地址类型是困难的,或者说有点模糊,这纯属正常,所以现在将NAT的四种地址类型融入在四个案例中来理解它们!
使用案例来分析上述四种地址类型发生的情况:
案例一:当内部私有专用网络的主机192.168.2.100要求被动态NAT或者PAT翻译成202.202.1.1的公共IP地址去访问公共网络的202.202.1.2时,如下图9.56所示,NAT路由器上的各种地址类型的示意表如下所示:
案例二:当公共网络上的主机202.202.1.2需要访问内部网络上的某台服务器,如192.168.2.100,如下图9.57所示,此时,192.168.2.100这台服务器被静态NAT映射成公共IP地址202.202.1.100,当主机202.202.1.2访问202.202.1.100时,NAT会把202.202.1.100的地址翻译成192.168.2.100,此时,主机202.202.1.2就能成功的访问192.168.2.100,在这种情况下关于NAT地址类型的示意表如下:
注意:在上述两个案例中,外部本地与外部全局地址始终一样,都是处于公共网络上的主机202.202.1.2。
案例三:当外部网络访问内部网络时,如下图9.58所示中的主机202.202.1.2它需要访问内部网络的服务器192.168.2.100,此时,网络管理员要希望它使用原始地址202.202.1.2进行访问,希望它在进入内部网络后,202.202.1.2被NAT翻译成192.168.2.50这个私有网络专用地址来访问192.168.2.100这台主机,在这种情况下就是所谓的NAT设备的外部访问内部时使用的地址,此时,NAT路由器的地址类型示意表如下:
注意:案例三的环境中,内部本地和内部全局地址通常是同一个IP地址,也就是被外部NAT访问的内部主机地址。
案例四:在如下图5.59所示的环境中,它将案例二和案例三集成在一个环境中,在该环境中,外部主机202.202.1.2需要访问内部服务器192.168.2.100,但是192.168.2.100被NAT映射成202.202.1.100这个公共IP地址,要求202.202.1.2主机访问202.202.1.100这个公共IP地址时,事实上访问到192.168.2.100;同时,要求公共主机202.202.1.2发出的数据进入私有网络后,原始地址202.202.1.2被NAT翻译成192.168.2.50的地址来对192.168.2.100进行访问,此时,的NAT地址类型的示意表如下:
注意:在案例四的环境中NAT的四个地址类型完成不相同,各自体现了各自的意义。可以在后续小节的演示实验中进一步理解NAT的四个地址类型。