5.2 前端需要知道的TCP、IP、端口号

TCP协议简介

HTTP协议的底层是由TCP协议和IP协议(简称TCP/IP)构建的。这不是前端需要涉及的内容,了解一下即可,想了解更多相关内容可以看阮一峰老师的文章:TCP 协议简介

IP网络协议

IP(Internet Protocol),主要你在互联网中,那么你就会有一个IP,通俗上理解,IP分为内网IP外网IP以下图为例

5.2 前端需要知道的TCP、IP、端口号_第1张图片
image.png
  • 你从电信买来宽带,一年一千多
  • 电信为你提供DNS服务
  • 你买了一个路由器,然后用电脑和手机分别连接路由器广播出来的无线WIFI
  • 只要路由器连上了电信的服务器,那么路由器就会给你一个外网IP,比如11.22.33.44就是一个外网IP。这就是你在互联网中的地址。
  • 但是如果你重启路由器,那么你很可能被重新分配一个外网IP,也就是说你的路由器没有固定的外网IP
  • 你可以花钱租一个固定的外网IP,像腾讯阿里这样的大公司,肯定会有很多外网IP,这样才能对我们提供稳定的服务。
  • 你的外网IP是11.22.33.44,那么你的手机和电脑的IP又是什么呢?答案是内网IP
  • 路由器会在你家里创建一个内网,内网中的设备使用内网IP,一般来说格式都是 192.168.xxx.xxx
    • 一般路由会给自己分一个好记的IP,如192.168.1.1
    • 然后路由会给内网中的每一个设备分配一个不同的内网IP,比如电脑是192.168.1.2,手机是192.168.1.3,以此类推
    • 现在路由器有两个IP了外网IP是11.22.33.44,内网IP是192.168.1.1
    • 内网中的设备是可以互相访问的,比如你可以用你的手机去直接查看你的路由器,但是不能直接访问外网,内网设备想要访问外网设备,必须经过路由器中转。
    • 内网和外网就想两个隔绝的空间,无法互通,唯一的联通点就是路由器,所以路由器也叫网关
  • 除了内网和外网,还有两个特殊的IP,本地IP:127.0.0.1,永远指向自己的设备。也就是localhost。特殊的IP:0.0.0.0,它不表示任何设备。

端口

你想要访问一个设备的时候(前提是你使用了TCP协议,HTTP就使用了TCP协议),指定IP是不够的,还必须指定端口号

端口号就是一个编号,并不是一种硬件

一个服务器(硬件)不一定只提供一种服务,比如一个服务器提供HTTP协议,又提供FTP协议,那么只有一个IP就无法告诉服务武器你想要使用哪种设备。

我们再看看一下5.1的这张图

5.2 前端需要知道的TCP、IP、端口号_第2张图片
image.png

在上图我们看到,服务器开了很多口子,这个口子是干什么用的呢?

每一个电脑都有很多端口,每个端口只做一件事,从0-2048的端口都是指定的。比如:

  • 21端口:ftp服务
  • 443端口:HTTPS
  • 1080:代理服务器端口
  • 80:用来服务HTTP协议。如果你要做一个服务器,那么你必须这台电脑的80端口给别人连。

所以有一个重要的原则:一个端口对应一个服务

你当然也可以使用其他端口,尤其是开发调试的时候。

你可能感兴趣的:(5.2 前端需要知道的TCP、IP、端口号)