2015-10-27 60 views
0

我知道私有IP对于互联网是不可见的,只有我的路由器可以知道它(如果我错了,请纠正我),并且我的公有IP是每个人用来与我交谈的人。公有IP与私有IP

我也明白,我们使用这种方法,因为没有足够的IP地址来满足每个人,所以这样两个不同的局域网中的两台不同的计算机可以共享相同的私有IP,路由器(例如)知道每个人的私人IP地址,并可以用它来与他们沟通。

我不明白的是,我们仍然需要给每台计算机一个IP地址,所以我使用两台连接了相同无线网络的计算机进行了测试,并且我惊讶地发现它们具有完全相同的公共IP!当然,私有IP地址是不同的

所以我的问题是这样的:

我们如何唯一标识每台计算机的,如果他们共享同一个公网IP和他们的私有IP是未知的人之外本地局域网

+0

阅读[NAT](https://en.wikipedia.org/wiki/Network_address_translation)。 – mustaccio

回答

2

在家庭接入路由器中,外部网络接口通常在互联网上,并且路由器可以具有公共路由地址(可从整个互联网访问的独特的互联网地址)。 内部网络是用户设备所在的位置。在内部网络上,IP地址是私有的,不能公开路由(有成千上万的家庭内部网络地址是192.168.1.x)。

在互联网上,一个私人地址的数据包地址不知道该去哪里。这就是使用NAT(网络地址转换)的原因。 NAT通常发生在家庭接入路由器中,这是专用网络上所有设备的默认网关。专用网络的源端口和源地址通过动态查找表“转换”为随机源端口和外部因特网路由器地址。当答案回来时,翻译会以相反的方式发生,并将数据包传送到内部设备。 NAT只是重写端口和IP地址,重新计算包校验和。经过一段时间没有看到流量后,NAT表中的条目将被删除,并且这些端口将被释放用于其他用途。

通过NAT机制,可以允许任何数量的内部设备(具有非公开路由地址)与任何互联网主机发起对话并获取回复。