ip地址、域名、DNS、URL的区别与联系
IP:每个连接到Internet上的主机都会分配一个IP地址,此ip是该计算机在互联网上的逻辑地址的唯一标识,计算机之间的访问就是通过IP地址来进行的。写法:十进制的形式,用“.”分开,叫做“点分十进制表示法”,如:127.0.0.1。IP地址采用二进制的形式表示的话很长,比较麻烦,为了便于使用,IP地址经常被写成十进制的形式。
域名:ip是数字标识,使用时不好记忆和书写,因此在将IP地址符号化,每一个符号化的地址都与特定的IP地址对应。用字符型地址代替数字型的IP地址,这个字符型地址就被称为域名。
以百度为例:

域名:www.baidu.com。只有1个。
ip:119.75.218.70或119.75.217.109或......,即ip可以有多个,共同指向百度的域名。
关系:
(1)1台计算机只有1个ip(一对一),即1个ip就是1台计算机
(2)1个域名对1个或多个ip(计算机):百度域名www.baidu.com的ip有119.75.218.70或119.75.217.109或......假如百度域名总共有10个ip,则就对应10台计算机,即多个计算机(ip)可以共同指向1个域名,也即119.75.218.70指向www.baidu.com,而119.75.217.109也指向www.baidu.com......
但是,域名就相当于人名,ip就相当于这个人。一个人可以有多个名字,但1个名字只能代表1个人(排除同名同姓),否则就乱套了。所以,1个域名,在实际应用中,只对1个ip。如:百度部署了100台服务器,即百度域名对应100个ip。如果使用ip来访问百度,难道就可以让某人用100个不同的ip都能访问百度主页吗? 这不乱了吗。因此,需要用到反向代理。比如淘宝就用的Tengine,百度用的BWS,还有的用的nginx等等

这样可以让所有的ip映射到一个www.baidu.com。这样我们访问www.baidu.com的时候,就会由百度的负载均衡服务器来分配一台服务器给用户访问,也就是说,虽然百度域名对应多个ip,这些ip都可以访问百度,但百度只允许用户通过1个ip访问,即只能通过一台服务器访问百度,至于我们访问的是哪一台就不重要了
(3)1台计算机上面可以有好多个服务,也就是一个ip地址对应了好多个域名。即一台计算机(ip)可以访问百度域名,还可以是360域名等,但这台ip访问不同域名的时候,只能通过百度给定的1个ip访问百度,360给定的1个ip访问360
(4)通过ip访问百度的流程:输入ip→访问IP地址→完成访问的内容→返回信息(输入的ip就是dns给你返回一个ip地址)
(5)通过域名访问百度的流程:输入域名→域名解析服务器(dns)解析成ip地址→访问IP地址→完成访问的内容---返回信息。即比(4)多了先将域名转为ip这一步
DNS:域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。域名的最终指向是IP
URL:统一资源定位符(英语UniformResourceLocator的缩写)俗称为网址(链接)。网址格式为:协议://域名或IP[:端口]/路径/文件名[参数=值]。结构中,协议://域名或IP是必需的,[]部分是可选的。如果端口与协议默认值不同,则需包含端口,省略则默认80端口。路径有时可省略。
以此博客为例:https://i.cnblogs.com/EditPosts.aspx?postid=11395178
1、协议:该URL的协议部分为“https”,表示网页使用的是HTTP协议。在Internet中可以使用多种协议,如HTTP,FTP等等本例中使用的是HTTP协议。在"HTTP"后面的“//”为分隔符。常用协议:
①.com 表示商业机构:百度 www.daidu.com
②.org 表示非盈利性组织:中国青年志愿者网 www.zgzyz.org.cn
③.gov 表示政府机构:国务院 www.gov.cn
④.edu 表示教育及科研机构:北理工 www.bit.edu.cn
用来表示国家顶级域名的比如:.cn 表示中国。.us 表示美国。.jp 表示日本,像 topbook.cc 就表示科科斯群岛的国家顶级域名。
另:在地址栏输入一个网址的时候,协议部分是不用输入的,浏览器会自动补上默认的 HTTP 协议。比如 直接输入域名www.baidu.com,这是一个网站独一无二的网络名字。其中的www指万维网。
互联网、因特网、万维网三者的关系是:互联网包含因特网,因特网包含万维网,凡是能彼此通信的设备组成的网络就叫互联网。所以,即使仅有两台机器,不论用何种技术使其彼此通信,也叫互联网。
拓展:
查询域名对应的IP:以百度为例
在cmd中,输入:ping www.baidu.com,回车即可
不能输入:ping https://www.baidu.com/,即输入的是域名,不是URL
Statements:如有不足之处,欢迎指正。分享随笔,一起进步
ip地址、域名、DNS、URL的区别与联系的更多相关文章
- Windows下使用命令行设置ip地址的DNS服务器
使用命令行或者编写bat批处理设置网络连接的IP地址以及DNS服务器地址有时候会比手动更加方便,IP地址和DNS的设置一般是配合的,常用到的几个状态是: 1.IP地址动态获取,DNS也动态 2.IP地 ...
- Debian静态IP地址和DNS
Debian静态IP地址和DNS 一.配置文件及路径 /etc/network/interfaces 二.IP地址1. DHCP的IP配置如下 # The primary network interf ...
- 一文看懂:网址,URL,域名,IP地址,DNS,域名解析
一个执着于技术的公众号 前言 今天给大家梳理一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文,并以简单的提问-解答 形式让读者更加深刻理解,希望有助于读者的学习,面试和工作! 1.一个 ...
- WEB服务器、网站、域名、IP地址、DNS服务器之间的关系
域名首先指向你的服务器,这个过程叫解析. 服务器分成好多小块,每小块叫一个空间或者一个虚拟主机. 所以当你输入你的域名以后,服务器收到你域名的访问信息,但不知道要打开这么多个小块中的那一个.所以要 ...
- TCP/IP(域名DNS)
域名是不带http://的. 有DNS就能解析域名,只要联网,不用担心你的域名和IP无法映射起来. 当然,域名和IP的映射也可以通过本地hosts文件(优先于DNS)添加.C:\Windows\Sys ...
- C# IP地址和DNS 网络(三)
Uri i = new Uri("http://www.baidu.com"); //可获取属性 UriBuilder u = new UriBuilder("http: ...
- c#修改本地连接工具 ip地址,dns,网关,子网掩码
//Form1类后台 #region 加载配置文件中的信息 /// <summary> /// 加载配置文件中的信息 /// </s ...
- Linux下修改主机IP地址、DNS、主机名的三种方法
使用root用户登录进入linux,打开进去终端 在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 (最后的eth0是网卡名,我的是Auto_et ...
- IP 地址 与 DNS
IP地址转化 192.168.10.1 十进制,点分十进制地址 32位二进制数字序列,四段,八位 十进制与二进制转换00000000 = 000000001 = 2 * 0 = 100000010 = ...
- 使用批处理命令设置windows系统的ip地址和dns
找到对应的网卡名称 使用命令:ipconfig ipconfig/all Windows IP Configuration Host Name . . . . . . . . . . . . : D5 ...
随机推荐
- py+selenium遇见IE,元素只有name属性【神奇解决】
问题:当需要自动化测试某系统,而该系统只兼容IE8,怎么办? IE8的问题:IE8不支持getElementByName,而属性中又没有ID,定位难度较大. IE8以下不兼容getElementByN ...
- canvas动画:气泡上升效果
HTML5中的canvas真是个很强大的东西呢! 这几天突发奇想想做一个气泡上升的动画,经过许久的思考和多次失败,终于做出了如下效果 由于是录制的gif图,看着会有点卡顿,实际演示是很自然的 想要做出 ...
- 解决 mysql多表联合查询时出现的分页问题
mysql一对多分页问题 部门表:tbl_dept 员工表:tbl_emp 数据库sql文件 CREATE DATABASE /*!32312 IF NOT EXISTS*/`ssm-crud` /* ...
- [翻译] .NET Core 3.0 Preview 7 发布
原文: Announcing .NET Core 3.0 Preview 7 今天,我们宣布推出 .NET Core 3.0 Preview 7 .我们的工作已经从创建新功能过渡到打磨版本.预计剩余的 ...
- Java EE.Servlet.生成响应
Servlet的核心职责就是根据客户端的请求生成动态响应. 1.编码类型 2.流操作(下载文件) servlet支持两种格式的输入/输出流.一种是字符输入输出流.另一种是字节输入输出流. 3.重定向
- 《VR入门系列教程》之17---发布第一个应用
发布运行 Unity可以支持多种目标平台的发布,包括:桌面端.Web端.移动端.游戏主机端. 发布运行之前的Cubes场景至桌面端,我们先选择File->Build Settin ...
- 《VR入门系列教程》之13---相机与立体渲染
相机.透视图.视口.投影 渲染好的场景都需要一个可以供用户查看的视图,我们通常在3D场景中用相机来提供这种需求.相机相对场景有位置和方向,就像我们生活中的相机一样,它也提供透视图查看方式,这种 ...
- 用margin还是padding ?
margin是用来隔开元素与元素的间距:padding是用来隔开元素与内容的间隔. margin用于布局分开元素使元素与元素互不相干:padding用于元素与内容之间的间隔,让内容(文字)与(包裹)元 ...
- Netty 客户端使用指数退避机制实现重连
指数退避 可以理解为每次重连失败时,就把重连时间设置为之前的指数级别.例如 2 秒,4 秒,8 秒...... 亚马逊AWS关于指数退避的两篇文章介绍 AWS 中的错误重试和指数退避 Exponent ...
- bean的创建(五)第二部分 寻找bean的工厂方法实例化
instanceWrapper = createBeanInstance(beanName, mbd, args); AbstractAutowireCapableBeanFactory.create ...