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"后面的“//”为分隔符。常用协议:

http——超文本传输协议资源
https——用安全套接字层传送的超文本传输协议
ftp——文件传输协议
file——本地计算机上的文件
2、域名:该URL的域名部分为 “ i.cnblogs.com ” 。一个URL中,也可以使用IP地址作为域名使用。如百度域名www.baidu.com也可用ip地址119.75.218.70
域名的最右边就是顶级域名,常见的比如:

①.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指万维网。

互联网、因特网、万维网三者的关系是:互联网包含因特网,因特网包含万维网,凡是能彼此通信的设备组成的网络就叫互联网。所以,即使仅有两台机器,不论用何种技术使其彼此通信,也叫互联网。

3、端口:跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。该URL省略了端口,即 i.cnblogs.com:80
4、虚拟目录:第一个“/”为根目录,从域名后的第一个“/”开始到最后一个“/”之间。虚拟目录也不是一个URL必须的部分。该URL没有虚拟目录。但https://www.python123.io/student/courses/934/groups的虚拟目录为student/courses/934
5、文件名:从域最后一个“/”开始到“?”(没?就到#。两者都要就到?)之间。如果没有“?”和“#”,则一直到最后,都是文件名部分。该URL的文件名为EditPosts.aspx。文件名也不是一个URL必须的部分,如果省略该部分,则使用默认的文件名index.htm
6、参数:从“?”开始到“#”之间,又称搜索部分、查询部分。参数可以允许有多个参数,参数与参数之间用“&”作为分隔符。该URL没有参数。但http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name的参数部分为“boardID=5&ID=24618&page=1”。其中boardID=5、ID=24618、page=1都是参数
7、锚:从“#”开始到最后,都是锚部分。锚部分也不是一个URL必须的部分。该URL没有锚。而http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name的锚部分是“name”。,其右面的字符就是该位置的标识符(一般情况下,锚链接会用到)

 拓展:

查询域名对应的IP:以百度为例

在cmd中,输入:ping www.baidu.com,回车即可

不能输入:ping https://www.baidu.com/,即输入的是域名,不是URL

Statements:如有不足之处,欢迎指正。分享随笔,一起进步

ip地址、域名、DNS、URL的区别与联系的更多相关文章

  1. Windows下使用命令行设置ip地址的DNS服务器

    使用命令行或者编写bat批处理设置网络连接的IP地址以及DNS服务器地址有时候会比手动更加方便,IP地址和DNS的设置一般是配合的,常用到的几个状态是: 1.IP地址动态获取,DNS也动态 2.IP地 ...

  2. Debian静态IP地址和DNS

    Debian静态IP地址和DNS 一.配置文件及路径 /etc/network/interfaces 二.IP地址1. DHCP的IP配置如下 # The primary network interf ...

  3. 一文看懂:网址,URL,域名,IP地址,DNS,域名解析

    一个执着于技术的公众号 前言 今天给大家梳理一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文,并以简单的提问-解答 形式让读者更加深刻理解,希望有助于读者的学习,面试和工作! 1.一个 ...

  4. WEB服务器、网站、域名、IP地址、DNS服务器之间的关系

    域名首先指向你的服务器,这个过程叫解析.  服务器分成好多小块,每小块叫一个空间或者一个虚拟主机.  所以当你输入你的域名以后,服务器收到你域名的访问信息,但不知道要打开这么多个小块中的那一个.所以要 ...

  5. TCP/IP(域名DNS)

    域名是不带http://的. 有DNS就能解析域名,只要联网,不用担心你的域名和IP无法映射起来. 当然,域名和IP的映射也可以通过本地hosts文件(优先于DNS)添加.C:\Windows\Sys ...

  6. C# IP地址和DNS 网络(三)

    Uri i = new Uri("http://www.baidu.com"); //可获取属性 UriBuilder u = new UriBuilder("http: ...

  7. c#修改本地连接工具 ip地址,dns,网关,子网掩码

    //Form1类后台     #region 加载配置文件中的信息        /// <summary>        /// 加载配置文件中的信息        /// </s ...

  8. Linux下修改主机IP地址、DNS、主机名的三种方法

    使用root用户登录进入linux,打开进去终端 在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 (最后的eth0是网卡名,我的是Auto_et ...

  9. IP 地址 与 DNS

    IP地址转化 192.168.10.1 十进制,点分十进制地址 32位二进制数字序列,四段,八位 十进制与二进制转换00000000 = 000000001 = 2 * 0 = 100000010 = ...

  10. 使用批处理命令设置windows系统的ip地址和dns

    找到对应的网卡名称 使用命令:ipconfig ipconfig/all Windows IP Configuration Host Name . . . . . . . . . . . . : D5 ...

随机推荐

  1. Excel催化剂开源第34波-SM.MS图床API调用(用POST上传multipart/form-data内容)

    日常做网抓数据,都是以GET请求为主,偶尔遇到需要POST请求的,一般POST的参数只是一串字符串就可以了,通过构造字符串也很容易完成,但此次SM.MS的API接口要求是Content-Type: m ...

  2. 吐槽下Excel的十大不规范使用问题

    Excel是个老少咸宜的软件工具,这是不争的事实,无论哪个级别的用户,都能在乐在其中.但问题是太多的人群因为不懂得正确的使用姿势,硬生生地把Excel玩得让人啼笑皆非,同样留给接手者一个难堪无比的烂摊 ...

  3. python小技巧 将二元列表转为一元列表

    list=[num for row in nums for num in row]

  4. 小白开学Asp.Net Core《三》

    小白开学Asp.Net Core<三> ——界面 我胡汉三再次又回来了(距离上篇时间有点长),今天抽时间将最近对框架采用的后台界面做个记录 1.先上图 (图一) (图二) 2.界面说明 后 ...

  5. Gin框架 - 自定义错误处理

    目录 概述 错误处理 自定义错误处理 panic 和 recover 推荐阅读 概述 很多读者在后台向我要 Gin 框架实战系列的 Demo 源码,在这里再说明一下,源码我都更新到 GitHub 上, ...

  6. python课堂整理6---字典

    一.字典  dict info = {"k1" : "v1", "k2" : "v2"} 以键值对形式组成字典 字典里的 ...

  7. golang在多个go routine中进行map或者slice操作应该注意的对象。

    因为golang的map和列表切片都是引用类型,且非线程安全的,所以在多个go routine中进行读写操作的时候,会产生“map read and map write“的panic错误. 某一些类型 ...

  8. Go语言圣经习题练习_1.7. Web服务

    练习 1.12: 修改Lissajour服务,从URL读取变量,比如你可以访问 http://localhost:8000/?cycles=20 这个URL,这样访问可以将程序里的cycles默认的5 ...

  9. jsp数据交互(一).3

    引入的文件如果是jsp则应定义为***.jspf文件,如果其他文件可定义为***.inc文件,即include file. jsp:include是既可以静态包含又可以动态包含,用jsp:includ ...

  10. python常用函数进阶(2)之map,filter,reduce,zip

    Basic Python : Map, Filter, Reduce, Zip 1-Map() 1.1 Syntax # fun : a function applying to the iterab ...