浏览器中网址访问过程详解

article/2025/11/4 8:36:30

前言

当我们在浏览器中输入一个网址,比如www.google.cn,浏览器就会加载出百度的主页。那么浏览器背后完成的具体是怎么样的呢?
总结起来大概的流程是这样的:
(1)浏览器本身是一个客户端,当你输入URL的时候,首先浏览器会去请求DNS服务器,通过DNS获取相应的域名对应的IP
(2)然后通过IP地址找到IP对应的服务器后,要求建立TCP连接
(3)浏览器发送完HTTP Request(请求)包后,服务器接收到请求包之后才开始处理请求包
(4)在服务器收到请求之后,服务器调用自身服务,返回HTTP Response(响应)包
(5)客户端收到来自服务器的响应后开始渲染这个Response包里的主体(body),等收到全部的内容随后断开与该服务器之间的TCP连接。
就可以用下面的这幅图来进行解释
网址访问流程

1. DNS解析

在浏览器中输入的是一个网址,是不能直接用来进行连接的,因而就要使用DNS地址解析将输入的URL网址转换为IP地址。查找的流程图是这样的
DNS地址解析流程
具体的查找过程和策略可以分为下面这几步:
(1)在浏览器中输入www.google.cn域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。
(2)如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。
(3)如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。
(4)如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。
(5)如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。


http://chatgpt.dhexx.cn/article/oT9JQ5JX.shtml

相关文章

浏览器访问IPv6地址

以本地的ipv6为例: 环境:win10、tomcat服务器 注:这里的tomcat服务器是用来帮助测试本地的ipv6地址可用性,如果是外网的的ipv6,直接访问即可 步骤如下: 一、首先查看本机的ipv6地址,在cmd命令…

浏览器访问网站

这个仅仅是我个人对于访问网站流程的一个理解,我相信肯定有不全面也有错漏的地方,如果是的各位可以给我指出来让我可以有所提高~ 五层协议体系结构中各层运用到的协议: 应用层:HTTP、DNS; 传输层:TCP、…

Selenium模拟浏览器访问

目录 一、selenium简介 1.1、什么是selenium 1.2、为什么使用selenium 1.3、安装selenium 1.3.1、谷歌浏览器驱动下载 1.3.2、谷歌驱动和谷歌浏览器版本之间的映射表 1.3.3、查看谷歌浏览器版本 1.3.4、安装selenium库 二、selenium的使用 2.1、selenium的使用步骤 2.2、举例…

浏览器禁止访问某个网站

浏览器要禁止访问某个网站,可以在电脑中打开 C:\Windows\System32\drivers\etc这个位置,找到hosts文件。 将需要禁止访问的网址输入,并在前面加上127.0.0.1即可。 如图所示。然后关闭保存。

如何通过浏览器访问本地电脑文件

如何通过浏览器访问本地电脑文件 首先,打开控制面板,找到"程序"点击打开。 找到“启用或关闭windows功能”,点击打开 找到“Internet Information Services”(Internet信息服务),将它的子项及子项的子项全部勾选&…

浏览器访问网址过程详解

前言 首先要了解几个参数的含义: IP地址:是指互联网协议地址。 子网掩码:子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位…

【无标题】浏览器是如何访问的? 超详细解析过程

浏览器分析链接指向网页的URL。浏览器向DNS请求解析 URL 的 IP 地址。域名系统DNS 解析出 URL 的 IP 地址。浏览器与服务器建立 TCP 连接。浏览器发出取文件命令:GET/chn/yxsz/index.htm。服务器(URL所在)给出响应,把文件 index.h…

Linux命令学习---查看linux服务器,开机启动的服务,正在运行的服务,监听检查,防火墙检查,SSH检查

1)查看linux服务器,开机启动的服务,输入以下命令 systemctl list-unit-files --stateenabled2)查看linux服务器,正在运行的服务: systemctl --typeservice --staterunning --all3)监听检查 ss…

c#如何在linux上运行程序,在Linux上运行C#的方法是什么

Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。有时我们需要在Linux上编写程序,那么c#在Linux中想要运行需要什么呢?这篇文章主要介绍了在Linux上运行C#的方法, 下面就来看看如何在Linux上运行Mono。 命令行应用 先从Mono主页(http://www.go-…

Linux系统查看磁盘可用空间的5个命令

大家好,我是良许。 工作中,经常会遇到磁盘爆满的情况,尤其是一台服务器运行了 N 年之后,里面会充满各种各样垃圾文件,比如:编译产生的中间文件、打包的镜像文件、日志文件,等等。 别问我怎么知…

Linux如何运行exe驱动,在Linux下可用Wine安装和运行360驱动大师、CCleaner

在Linux操作系统下可用Wine安装和运行360驱动大师、CCleaner.exe文件,它们是Windows下的软件,在Linux中借助Wine就可以使用360驱动大师和CCleaner了,已亲测有效。 说明 1、如果有原生的Linux软件,请不要用Wine来运行,因…

服务器被攻击 显示503,在Linux服务器下出现503服务不可用错误的原因和排除方法...

本文介绍在Linux服务器下出现503服务不可用错误(503 Service Unavailable Error)的原因和排除方法。内容有:什么是HTTP 503错误、对500错误进行故障排除。 前言 浏览网页时最常见的错误之一是“503服务不可用错误(503 Service Unavailable Error)”,此消息表明网络服务器遇到…

在线运行 Linux,真滴牛逼。

作者:JackTian 来源:公众号「杰哥的IT之旅」 ID:Jake_Internet 转载请联系授权(微信ID:Hc220088) 原文地址:在线运行 Linux,强的离谱! 大家好,我是杰哥。 对…

什么是 503 服务不可用错误?

浏览网页时最常见的错误之一是“503 服务不可用错误”,此消息表明 Web 服务器遇到技术问题并且无法处理请求。 本文将介绍 503 错误的含义、收到 HTTP 503 代码的原因以及如何解决这些错误。 什么是 HTTP 503 错误 当您打开网页时,您的浏览器会向托管…

在linux下安装配置ssh服务

一、 实验题目: linux环境下的部分配置 二、 理论分析 SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会…

Linux的dhcp服务器

准备工作 1.CentOS 7作为服务器 CentOS 7作为客户机 2.先将虚拟机上的DHCP服务器和客户机的网络连接设置为仅主机模式(为了更好的模拟生产服务器) 2.打开虚拟网络编辑器,将仅主机模式下的"使用本地DHCP服务器IP地址分配给虚拟机"…

mac上实时运行linux系统,在Linux操作系统上可用Darling来运行macOS软件

本文介绍一款适用于Linux的macOS转换层工具Darling,用它可让您在Linux操作系统上运行macOS软件。 介绍 1、快速 Darling无需使用硬件仿真器即可直接运行macOS软件。 2、自由 与Linux一样,Darling是免费的开源软件,它在GitHub上公开开发&#…

网络诊断显示“DNS服务器可能不可用”

首先提供我的解决方法: 1、遇到这种情况,先重启电脑试一试,或者把ADSL猫和路由器都重启一下。如果还不行,进入网络共享中心的网络连接窗口,选择本地连接,右键,选择【属性】,如果用的…

linux运行直播软件,在Linux下可用Wine安装和运行虎牙直播、斗鱼直播

在Linux操作系统下可用Wine安装和运行虎牙直播、斗鱼直播.exe文件,它们是Windows下的软件,在Linux中借助Wine就可以使用虎牙直播和斗鱼直播了,已亲测有效。 说明 1、如果有原生的Linux软件,请不要用Wine来运行,因为在这…

linux查服务器总内存大小,怎么查看linux中的可用内存大小

怎么查看linux中的可用内存大小 发布时间:2020-06-16 13:28:33 来源:亿速云 阅读:620 作者:鸽子 作为Linux用户,特别是管理员,我们需要检查系统使用多少内存资源以及有多少内存资源是空闲的。由于最重要的是要检查服务器上的内存资源,因此最好学习可以帮助我们进行服务器…