不背八股!!!面试官:为什么你手机的IP会是192.168


前言


在构建局域网时,IP地址的管理是至关重要的。由于IPv4地址是非常有限的,私有IP地址的使用成为解决IP地址不足问题的有效手段。

在这篇文章中,我们将深入探讨私有IP地址的分类和分配,NAT协议的原理,以及私网和公网、内网和外网的区别。

匮乏的IP地址

IPV4使用32位地址,也就是说支持分配2^32 约 43亿个IP地址,但是现在全球人口接近70亿,每个人身上可能还有多个通信设备,比如电脑、平板、手机等等,IPV4能够分配的IP地址个数远远少于当今需要的IP地址个数。

解决上述问题,有人可能会提到IPV6,是的,IPV6使用128位地址,支持分配2 ^ 128个IP地址,这足够为地球的每一粒沙子都分配一个单独的IP地址了。

但是IPV6因为不能完美兼容IPV4,所以IPV6被提出的时候并没有受到大规模推广,而是使用的NAT协议解决IP地址匮乏的问题,大多数的老旧网络设备都需要升级以支持IPV6,所以在九十年代和零零年代IPV4地址枯竭问题产生的时候,历史还是选择了NAT协议来解决这个问题,现在NAT仍然在广泛使用中,随着IPV6的逐渐推广,未来可能逐渐减少对NAT的依赖。


私有IP地址的分类和分配:


在构建局域网时,通常局域网内部要使用私有IP地址,而管理员可以根据需求,选择一类、二类、三类的私有地址,这种私有地址我们一般称作私网地址,和公网相对,是没有真正连接到互联网上的。

A B C三类网络都有一小块地址供全世界各地建设局域网使用,也就是每个企业都可以用私网,不同局域网的私网地址对应的主机是不一样的,这样就能够有效解决IPV4地址不足的问题。也就是说A地和B地可能有一致的私网IP,但是它们是完全不同的两台机器。


  • A类:

    10.0.0.0~10.255.255.255

  • B类:

    172.16.0.0~172.31.255.255

  • C类:

    192.168.0.0~192.168.255.255


这些私有地址允许企业在全球范围内构建局域网,而不会与其他局域网的IP地址冲突。

不难看出来A类私网网址是B类数量的16倍,而B类又是C类数量的16倍,C类私网允许的主机数量为2^16-2,已经足够大部分的公司或企业进行IP地址的分配了,如果是特大型系统,也可以考虑使用A类或者B类,不过现实中这种情况比较少,所以我们看到的私网IP地址通常都是192.168开头的。


私网/公网,内网/外网:


私网和公网是通过IP地址进行区分的,从特征上看私网IP并没有连接到互联网上,只是通过NAT协议在路由器层面连接到互联网,也就是一个局域网中的所有私网IP,对外看来是一致的,对方并不知道你是私网,也不知道你有多少台主机。

而公网就是真正接入到互联网中的,我们可以通过网络对公网资源进行访问。

内网和外网对应的是防火墙这个概念,在防火墙内的网络我们称之为内网,防火墙外的网络则为外网。我们常说的VPN就是通过这些工具暴露出来的接口(通常是socks5)的代理接口,翻越了国家防火墙(GFW)的限制,与国家防火墙外的代理服务器进行通讯。在国家层面,我们把GFW之外的网络称之为外网,GFW之内的网络称之为内容。公司通常也会搭建自己的防火墙,那么在公司防火墙之内的也称之为内网,之外的称之为外网。由此可见,内外网对应的是特定的防火墙,墙内则为内网,墙外则为外网


NAT协议


那么私网中的计算机是如何访问到局域网之外的网络的呢?这就需要利用到NAT协议(网络转换协议)

NATNetwork Address Translation)是一种在IP数据包通过路由器或防火墙时重写IP地址或目的IP地址的技术。典型情况下,一个私有网络与连接在该网络上的路由器共享一个专有地址,通过ISP提供的IP地址连接到互联网。NAT在信息从内网向互联网传递时,将源地址从私有地址转换为公有地址。


举个例子:


一个私有IP比如192.168.100.99和连接在这个网络上的一个路由器,路由器占用这个网络地址空间的一个专有地址,同时通过一个ISP提供的IP地址WAN73.72.71.70连接到因特网上,当信息从本地向互联网传递的时候,源地址从私有地址192.168.100.99转换成公有地址73.72.71.70

NAT优点在于能够减少IP地址不足的情况,使用方便,成本较低,并且因为主机不直接进行通信,所以可以阻止部分攻击。

它的缺点NAT功能下的主机没有真正的IP地址,因此可能无法参与某些协议,比如Multicast这种。

一个私网内有多台主机,路由器是怎么知道哪个主机发送给外界消息的呢?当路由器接收到响应的时候,它又是怎么知道该转发给哪台主机的呢?

当私网中的计算机想要访问外部网络时,它们首先通过NAT路由器将信息发送到外部。在这个过程中,NAT路由器会记录发送者的内网地址和端口,并为其分配一个全局地址和端口。这个映射关系记录在NAT路由表中。当服务器响应时,NAT路由器根据目的地址和端口,将响应转发给正确的主机。

这涉及到两次映射:出境包源地址的替换和入境包目的地址的替换。NAT路由表记录了这些映射关系,确保信息被正确转发到内网中的主机。


结语


本文主要向大家介绍了IP地址匮乏问题,从而引出了NAT协议,通过历史发展的角度,解释了IPV6在被提出时为什么没有大规模推广,以及内网/外网,公网/私网之间的差别。


标签

发表评论

苏ICP备2023047577号-1