解密网络基础:从域名解析到服务器

网络基础知识尽在这里!

Featured image

1 基础概念

1.1 服务器

服务器是一种专门的计算机硬件设备或软件程序,它的主要作用是提供计算和服务。服务器通常运行于网络环境中,能够为其他客户端设备(如个人电脑、智能手机、ATM机、火车系统等)提供服务。服务器具备以下特点:

高速的计算能力:服务器拥有较普通计算机更快速的CPU,能够在短时间内完成大量数据处理和任务执行。

长时间的可靠运行:由于需要长时间稳定工作,服务器设计上考虑了高可用性和长寿命。 强大的外部数据吞吐能力:服务器拥有较大的内存和磁盘存储容量,以及快速的数据传输接口,能够高效地处理和响应外部数据请求。

良好的扩展性:为了适应不断变化的技术需求和发展,服务器的设计和配置具有良好的灵活性,便于进行升级和扩容。

服务器可以安装不同的操作系统和软件,包括但不限于网络操作系统(如Windows Server、Linux、Unix)、服务器应用系统软件(如Web服务器、邮件服务器、数据库服务器等)。这些软件使得服务器能够提供多种服务,如网站建设、电子邮件收发、数据存储和管理等。

总的来说,服务器是一种专业化的计算机系统,旨在通过网络为其他设备和用户提供计算资源和支持服务。

1.2 IP地址

IP地址(Internet Protocol Address)是互联网协议提供的一种统一的地址格式。它的主要功能是为互联网上的每一个网络和每一台主机分配一个逻辑地址,这样做可以屏蔽物理地址的差异。每个连接到网络的设备都有一个唯一的IP地址,这个地址在数据交换时用于确保通信的正确性。IP地址不仅限于计算机,还包括路由器、交换机等其他网络设备。IP地址的类型主要分为IPv4和IPv6两大类,但还有其他不常用的较小分类。为了便于用户在互联网上交流,还使用了DNS服务来将易于记忆的域名转换为对应的IP地址。

1.3 域名

域名(英语:Domain Name),又称网域,是由一串用点分隔的名字组成的互联网上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识。

由于IP地址不方便记忆并且不能显示地址组织的名称和性质,人们设计出了域名,并通过域名系统(DNS,Domain Name System)来将域名和IP地址相互映射,使人更方便地访问互联网,而不用去记住能够被机器直接读取的IP地址数串

1.4 DNS

DNS,即域名系统(Domain Name System),是互联网上的一项基础服务。它负责将人类的易于记忆的域名与计算机能够直接使用的IP地址进行转换,从而使得用户可以通过输入域名而非IP地址来访问互联网上的各种服务和应用。DNS由两部分组成:域名解析器和域名服务器。域名解析器负责将用户的域名请求转换成相应的IP地址,而域名服务器则存储着域名与其对应的IP地址的映射信息。每个域名必须绑定到一个IP地址,但一个IP地址可以对应多个不同的域名。

1.5 广域网(公网)

广域网(英语:Wide Area Network,缩写为 WAN),又称外网、公网。是连接不同地区局域网或城域网计算机通信的远程网。通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个地区、城市和国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。广域网并不等同于互联网。

1.6 局域网(内网)

局域网就是局部地区形成的一个区域网络,其特点就是分布地区范围有限,可大可小,大到一栋建筑楼 与相邻建筑之间的连接,小到可以是办公室之间的联系。局域网自身相对其他网络传输速度更快,性能更稳定,框架简易,并且是封闭性,这也是很多机构选择的原因所在。局域网自身的组成大体由计算机设备、网络连接设备、网络传输介质3大部分构成,其中,计算机设备又包括服务器与工作站,网络连接设备则包含了网卡、集线器、交换机,网络传输介质简单来说就是网线,由同轴电缆、双绞线及光缆3大原件构成。

2 网络常识

2.1 我们是如何访问一个网站的?

当我们用浏览器访问某个网站时,我们其实是在与一个远程的服务器进行通信。服务器是一台存储了网站数据和资源的计算机,它可以响应我们的请求并向我们发送网页内容。但是,要访问服务器,我们需要经过一系列的步骤,涉及到多个网络协议和设备。本文档对其 从浏览器输入网址到最后展示相关内容。

1、输入网址:我们在浏览器的地址栏中输入网址,也就是统一资源定位符(URL),它指定了我们想要访问的网站的域名和路径

2、域名解析:浏览器需要将域名转换为服务器的IP地址,也就是一串数字,表示服务器在互联网上的位置。浏览器会先检查本地缓存或者操作系统的hosts文件,看是否有对应的IP地址。如果没有,浏览器会向域名系统(DNS)服务器发送查询请求,获取IP地址

3、建立连接:浏览器根据IP地址和端口号,通过传输控制协议(TCP)与服务器建立一个连接。TCP是一种可靠的双向通信协议,它会在连接建立前进行三次握手,确认双方都准备好发送和接收数据。

4、发送请求:浏览器通过超文本传输协议(HTTP)或者其安全版本(HTTPS)向服务器发送一个请求报文,包含了请求方法、请求头和请求体等信息。请求方法指定了我们想要对服务器资源进行什么操作,如GET、POST等。请求头包含了一些附加信息,如用户代理、Cookie等。请求体包含了一些提交的数据,如表单内容等。

5、接收响应:服务器收到请求后,会根据请求内容进行处理,并返回一个响应报文,包含了响应状态码、响应头和响应体等信息。响应状态码表示了请求的结果,如200表示成功,404表示未找到等。响应头包含了一些附加信息,如内容类型、缓存控制等。响应体包含了网页的内容,如HTML、CSS、JavaScript等。

6、渲染页面:浏览器接收到响应后,会解析响应体中的HTML文档,并构建一个文档对象模型(DOM)树,表示网页的结构。同时,浏览器会解析CSS样式表,并构建一个层叠样式表对象模型(CSSOM)树,表示网页的样式。然后,浏览器会将DOM树和CSSOM树合并为一个渲染树,表示网页的可见部分。接着,浏览器会计算渲染树中每个节点的布局和位置,并将它们绘制到屏幕上。此外,浏览器还会执行响应体中的JavaScript代码,实现网页的交互功能。

7、断开连接:当浏览器完成页面渲染或者用户关闭页面时,浏览器会通过TCP向服务器发送一个断开连接的报文,并释放资源。

2.2 为什么自己的电脑不能搭建网站?

其中一个主要的原因是个人电脑一般没有公网IP,这会导致只有和你在同一个WiFi的情况下才能访问你的网站;而服务器又公网IP。

宽带为私网IP最主要的原因还是因为公网IP资源紧张。IPv4迄今为止已经使用了30多年。最早期的时候,互联网只是设计给美国军方用的,根本没有考虑到它会变得如此庞大,成为全球网络。尤其是进入21世纪后,随着计算机和智能手机的迅速普及,互联网开始爆发性发展,种类繁多的上网设备出现也促使更多的人开始连接互联网。这就意味着,需要越来越多的IP地址。

其次,国内网站基本不支持IPv6的访问,目前的基础电信网络都是在IPv4的环境下运行。即便用户想用,也没有应用环境,因此导致目前中国IPv6地址使用率只有0.5%。所以为了应对IPv4资源紧张问题,运营商干脆就不给你分配,而是广泛使用NAT,通过NAT给用户分配内网地址而非公网地址,比如你电脑获取的IP可能是10开头或者192开头的私网IP。

2.3 IPV4和IPV6有什么区别?

  1. 地址空间:IPv4使用32位地址,理论上可以支持大约43亿个唯一的互联网地址。1
  1. 地址表示法:
  1. 协议:
  1. 安全性:
  1. 性能: