公网IP与NAT协议的联系
互联网时代,我们经常听到外网IP(即互联网IP地址)和内网IP(即局域网IP地址)这两个名词,但他们的定义与区别大家知道吗?
稍微了解一些的都知道,提到外网IP和内网IP就必须提到NAT路由转换,那就从NAT路由转换开始了解吧。
NAT(Network Address Translation)即网络地址转换,它实现内网的IP地址与公网的地址之间的相互转换,将大量的内网IP地址转换为一个或少量的公网IP地址,减少对公网IP地址的占用。
NAT的最典型应用是:在一个局域网内,只需要一台计算机连接上Internet,就可以利用NAT共享Internet连接,使局域网内其他计算机也可以上网。使用NAT协议,局域网内的计算机可以访问Internet上的计算机,但Internet上的计算机无法访问局域网内的计算机。Windows操作系统的Internet连接共享、sygate、winroute、unix/linux的natd等软件,都是使用NAT协议来共享Internet连接。 所有ISP(Internet服务提供商)提供的内网Internet接入方式,几乎都是基于NAT协议的。
我们都知道,IPv4中的IP地址的数量是有限的,每次把一部分地址分配出去,那么就意味着能够用来分配的IP地址就更少了,而且随着现在手机,电脑等的快速发展,如果每个手机或者电脑都要求一个IP地址,那么显然IP地址是不够用的。
为了解决这个问题,内网开始发展。简单来说就是在一个局部的地理范围内(一般表现为家庭、公司、学校),将各种计算机、外部设备和数据库等互相联接起来组成的计算机通信网。
以公司内网为例,假如我们给这个公司A分配了一个IP=192.168.1.1。在公司A的内网里面有3台电脑,如果这三台电脑要上网的话,我们需要给他分配一个IP,分别分配电脑A = 192.168.1.2 电脑B = 192.168.1.3 电脑C = 192.168.1.4,而这个规则可以由我们的内网网关来管理。
假如电脑A想要访问百度,百度的IP我们假设为:172.168.30.3: 我们都知道,电脑A的IP是我们虚构的,实际上可能并不存在这样一个IP,如果用电脑A的IP去访问百度,那肯定行不通。我们也知道,由于百度和电脑A不在一个局域网内,所以A要访问百度,那么必须得经过网关。而网关的这个IP地址,是真实存在的,是可以访问百度的。为了让 A 可以访问百度,那么我们可以采取地址的映射转换,我们也称之为网络地址转换,即NAT。
而像A、B、C这样的IP地址我们也称之为内网IP,即内网IP;而像网关,百度这样的IP我们称之为外网IP(即互联网公网IP)。
现在知道外网IP和内网IP了吧?