在浏览器中输入一个IP地址,计算机如何找到它?

在浏览器中输入一个IP地址 计算机以什么方式在如此多的设备中定位并连接到此IP所在的计算机?

比如百度的IP地址202.108.22.5,计算机怎样能在全球四十多亿个IP中找到它?IPv6号称能为地球上每一粒沙编号 IPv6与IPv4的查找方式是否一致?

非IT专业的读者,可能对互联网有一个小误解。计算机压根不知道202.108.22.5在哪里,但是互联网却知道202.108.22.5在哪里,互联网知道这个IP地址隶属于北京联通。

互联网如何知道202.108.22.5在哪里?
全球IP地址被各大运营商、大型企业瓜分一空。比如这个202.108.22.5就被联通集团抢到了。当然抢IP地址不是一个一个抢的,而是一段一段抢的。比如联通可能抢到了202.108.0.0/16这一大段IP地址。202.108.0.0/16代表的意思是,以202.108开头的任意IP地址,也可以写成202.108.X.X以方便理解。其中,“X”代表从0到255的任意数字。苹果公司抢到了17.0.0.0/8,代表17.x.x.x,这个号段一共包含1600万+多个全球IP地址。

各大运营商抢到了自己的IP号段,需要用BGP为这些IP号段铺路了。联通用BGP分别告诉中国电信、中国移动,自己所有的IP号段,其中包含有202.108.0.0/16。当然电信、移动也会用BGP告诉彼此自己所有的IP号段。当然还要国外的运营商交换彼此的IP号段,这样才能构成全球互联网。

这些秘密交易(运营商之间的BGP路由交换),通常发生在联通与电信的核心网里。核心网是每个运营商的一级网络。核心网会通过长途传输网下联各大省公司(二级网络),省公司再下联市一级,市公司下辖区、县、数据中心。与此相对应,202.108.0.0/16这个号段也会被层层分割,一直分到数据机房。

举个小例子
当中国电信网络里出现一个目的IP= 202.108.22.5的报文,由于202.108.22.5位于IP号段202.108.0.0/16内,电信知道需要将报文扔给联通的网络(电信与联通会有互联光纤)。于是IP报文从电信网络进入联通网络。

联通网络如何知道202.108.22.5隶属于北京联通?
联通集团,会将202.108.0.0/16这个大号段(包含65536个IP),细分为多个IP号段,分给直辖市、省公司。

北京是大直辖市,分得比较多,假如分得了202.108.16.0/20(共包含4096个IP)。这个号段最小的IP = 202.108.16.0,最大的IP= 202.108.31.255。很显然202.108.22.5属于这个号段。

202.108.16.0/20被分到北京联通公司,北京联通下辖多个区、多个数据中心。202.108.16.0/20被层层分割,202.108.22.5这个IP被分配给北京联通某数据中心,恰巧被百度租下,配置在服务器上。

全球IP在互联网上的位置,在互联网用户访问它们之前已经早就被互联网知晓。互联网耐心等待着来自用户的IP报文,万事俱备,只欠用户IP报文的到来了。

不是IP报文进入互联网之后,互联网再去查询IP地址在哪里。不是这样的,那多慢啊,黄花菜都要凉了。读者一定要清晰这一点,互联网早就准备好了,随时为用户IP报文服务。

电信的用户老王电脑上的IP报文(目的IP = 202.108.22.5 )是如何到达北京联通机房,并最终到达百度服务器?

报文开头说计算机其实并不知道202.108.22.5的位置在哪里,这句话不是非常准确。为什么这么说呢?每一台连接互联网的计算机都有一条神奇的路由 0.0.0.0/0 指向运营商。

这条神奇的路由,包含所有的IP地址,自然也包含202.108.22.5。所以老王的计算机会将IP报文扔给运营商。通常用户发给运营商IP报文的方向为上行(upstream),用户接收运营商IP报文的方向为下行(downstream)。

IP报文(简称网络流量),网络流量是一个没有生命的快递包裹,外包装上写有收件人IP地址= 202.108.22.5。快递包裹既然没有生命,进入互联网之后被动接受路由服务,直到到达终点。

电信的接入网收到老王的IP报文,接入网也不知道终点的准确位置,但是接入网也有同样神奇的路由 0.0.0.0/0,指向更上一级网络。于是,IP报文继续上行到上一级网络。这种层层上行的游戏一直继续上演,直到IP报文到达电信的核心网。

电信核心网不是摸鱼的,它知道202.108.22.5在什么位置,因为它有一条指向联通网络的路由202.108.0.0/16,于是将IP报文扔给联通核心网。

联通核心网收到IP报文,一查路由表,202.108.22.5匹配到202.108.16.0/20,指向北京联通路由器。将IP报文下行扔给北京联通。

北京联通继续查自己的路由表,匹配到202.108.22.0/24路由,指向某区数据中心。将IP报文下行扔给某区数据中心路由器。

数据中心路由器收到IP报文之后,也查路由表,找到一条路由 202.108.22.4/31恰好匹配202.108.22.5,指向百度服务器,将IP报文扔给百度服务器,IP报文终于到达了终点。

总结
• IP报文从老王计算机发出,到达电信核心网之前,称为上行。上行通常只能使用0.0.0.0/0路由。采用的是模糊查找。

• IP报文从电信核心网到达联通核心网,使用BGP路由,称为交换。采用的是比较清晰的查找。

• IP报文从联通核心网,层层下行,路由越来越清晰,越来越逼近终点。采用的是越来越清晰的查找。

本文的关键词可以总结为查找,可以概况为:

模糊查找(上行)——— > 较清晰查找 (交换) ———- > 越来越清晰的查找(下行)。

来源:车小胖谈网络,本文观点不代表自营销立场,网址:https://www.zyxiao.com/p/125880

发表评论

登录后才能评论
侵权联系
返回顶部