浅析URL
- URL包含那几部分,每部分分别有什么作用
- 方案
- 主机与端口
- 用户和密码
- 路径
- 参数
- 查询字符串
- 片段
- DNS的作用是什么,nslookup命令怎么用
- 直接查询 nslookup domain [dns-server]
- 查询其它记录 nslookup -qt=type domain [dns-server]
- 反向解析 nslookup -qt=ptr [ip地址]
- 检查域名的缓存时间 Nslookup –d [其它参数] 目标域名
- IP的作用是什么,Ping命令怎么用
- 域名是什么,分别哪几类域名
- 域名语法
- 顶级域
- 子域名
- 国际化域名
大多数 URL 方案的 URL 语法都建立在这个由 9 部分构成的通用格式上:
| 组件 | 描述 | 默认 |
|---|---|---|
| 方案 | 访问服务器以获取资源时要使用哪种协议 | 无 |
| 用户 | 某些方案访问资源时需要的用户名 | 匿名 |
| 密码 | 用户名后面可能要包含的密码,中间由冒号(:)分隔 | E-mail地址 |
| 主机 | 资源宿主服务器的主机名或点分IP地址 | 无 |
| 端口 | 资源宿主服务器正在监听的端口号。(HTTP的默认端口号为80,HTTPS的默认端口是443) | 每个方案特有 |
| 路径 | 服务器上资源的本地名,由一个斜杠(/)将其与前面的URL组件分隔开来。 | 无 |
| 参数 | 某些方案会用这个组件来指定输入参数。参数为名/值对。URL中可以包含多个参数字段,它们相互之间以及与路径的其余部分之间用分号(;)分隔 | 无 |
| 查询 | 某些方案会用这个组件传递参数以激活应用程序(比如数据库、公告板、搜索引擎以及其他因特网网关)。查询组件的内容没有通用格式。用字符“?”将其与URL的其余部分分隔开来 | 无 |
| 片段 | 一小片或一部分资源的名字。引用对象时,不会将frag字段传送给服务器;这个字段是在客户端内部使用的。通过字符“#”将其与URL的其余部分分隔开来 | 无 |
方案实际上是规定如何访问指定资源的主要标识符,它会告诉负责解析 URL 的应用程序应该使用什么协议。
方案组件必须以一个字母符号开始,由第一个“:”符号将其与 URL 的其余部分分隔开来。方案名是大小写无关的,因此 URL“http://www.joes-hardware.com” 和 “HTTP://www.joes-hardware.com”是等价的。
要想在因特网上找到资源,应用程序要知道是哪台机器装载了资源,以及在那台机器的什么地方可以找到能对目标资源进行访问的服务器。URL 的主机和端口组件提 供了这两组信息。
主机组件标识了因特网上能够访问资源的宿主机器。可以用上述主机名(www.joeshardware.com),或者 IP 地址来表示主机名。比如,下面两个 URL 就指向同一个资源——第一个 URL 是通过主机名,第二个是通过 IP地址指向服务器的:
http://www.joes-hardware.com:80/index.htmlhttp://161.58.228.45:80/index.html
端口组件标识了服务器正在监听的网络端口。对下层使用了 TCP 协议的 HTTP 来说,默认端口号为 80。
很多服务器都要求输入用户名和密码才会允许用户访问数据。FTP 服务器就是这样一个常见的实例。这里有几个例子:
ftp://ftp.prep.ai.mit.edu/pub/gnuftp://anonymous@ftp.prep.ai.mit.edu/pub/gnu
ftp://anonymous:my_passwd@ftp.prep.ai.mit.edu/pub/gnu
http://joe:joespasswd@www.joes-hardware.com/sales_info.txt
第一个例子没有用户或密码组件,只有标准的方案、主机和路径。如果某应用程序使用的 URL 方案要求输入用户名和密码,比如 FTP,但用户没有提供,它通常会插入一个默认的用户名和密码。比如,如果向浏览器提供一个 FTP URL,但没有指定用户名和密码,它就会插入 anonymous(匿名用户)作为你的用户名,并发送一个默认的密码(Internet Explorer 会发送 IEUser,Netscape Navigator 则会发送 mozilla)。
第二个例子显示了一个指定为 anonymous 的用户名。这个用户名与主机组件组合在一起,看起来就像 E-mail 地址一样。字符“@”将用户和密码组件与 URL 的其余部分分隔开来。
在第三个例子中,指定了用户名(anonymous)和密码(my_passwd),两者之间由字符“:”分隔。
URL 的路径组件说明了资源位于服务器的什么地方。比如:
http://www.joes-hardware.com:80/seasonal/index-fall.html这个 URL 中的路径为 /seasonal/index-fall.html。路径是服务器定位资源时所需的信息。可以用字符“/”将 HTTP URL 的路径组件划分成一些路径段(path segment)。每个路径段都有自己的参数(param)组件。
为了向应用程序提供它们所需的输入参数,以便正确地与服务器进行交互,URL 中有一个参数组件。这个组件就是 URL 中的名值对列表,由字符“;”将其与 URL 的其余部分(以及各名值对)分隔开来。它们为应用程序提供了访问资源所需的所有附加信息。比如:
ftp://prep.ai.mit.edu/pub/gnu;type=d在这个例子中,有一个参数 type=d,参数名为 type,值为 d。
如前所述,HTTP URL 的路径组件可以分成若干路径段。每段都可以有自己的参数。比如:
http://www.joes-hardware.com/hammers;sale=false/index.html;graphics=true这个例子就有两个路径段,hammers 和 index.html。hammers 路径段有参数 sale,其值为 false。index.html 段有参数 graphics,其值为 true。
假设 Joe 的五金商店在数据库中维护着一个未售货物的清单,并可以对清单进行查询,以判断产品是否有货,那就可以用下列 URL 来查询 Web 数据库网关,看看编号为 12731 的条目是否有货:
http://www.joes-hardware.com/inventory-check.cgi?item=12731这个 URL 的大部分都与我们见过的其他 URL 类似。只有问号(?)右边的内容是新出现的。这部分被称为查询(query)组件。URL 的查询组件和标识网关资源的 URL 路径组件一起被发送给网关资源。
查询多个时可名值对之间用字符“&”分隔:
http://www.joes-hardware.com/inventory-check.cgi?item=12731&color=blue在这个例子中,查询组件有两个名 / 值对:item=12731 和 color=blue。
为了引用部分资源或资源的一个片段,URL 支持使用片段(frag)组件来表示一个资源内部的片段。比如,URL 可以指向 HTML 文档中一个特定的图片或小节。片段挂在 URL 的右手边,最前面有一个字符“#”。比如:
http://www.joes-hardware.com/tools.html#drills在这个例子中,片段 drills 引用了 Joe 的五金商店 Web 服务器上页面 /tools.html 中的一个部分。这部分的名字叫做 drills。
HTTP 服务器通常只处理整个对象,而不是对象的片段,客户端不能将片段传送给服务器。浏览器从服务器获得了整个资源之后,会根据片段来显示你感兴趣的那部分资源。
详细可查看HTTP权威指南
DNS:域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。
使用方法
详细可查看夏末秋至博客
IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:
一是解决互联网问题,实现大规模、异构网络的互联互通;
二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。
在Windows系列的操作系统中,我们都可以使用ping命令来解决网络中出现的路由问题,方法如下 :
①检查当前的IP配置。在Windows系统中使用ipconfig.exe检查IP配置。②在Windows系统中,ping命令允许在命令行中输入选项,命令形式如下:
C:\>ping 169.254.104.10C:\>ping baidu.com
详细可查看 百度百科
网域名称(英语:Domain Name,简称:Domain),简称域名、网域,是由一串用点分隔的字符组成的互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位。 域名可以说是一个IP地址的代称,目的是为了便于记忆后者。
域名由多个部分组成,这些部分通常连接在一起,并由点分隔,例如bk.tw.lvfukeji.com。最右边的一个标签是顶级域名。一个域名的层次结构,从右侧到左侧隔一个点依次下降一层。每个标签可以包含1到63个八字节。域名的结尾有时候还有一点,这是保留给根节点的,书写时通常省略,在查询时由软件内部补上。
域名里的英文字母不区分大小写,因此可以使用大写方法拼写,但一般都以小写形式拼写(有时为了区别i和L,将L改为大写)。
顶级域(英语:Top-level domains,缩写:TLD)是域名中最高的一级,每个域名都以顶级域结尾
顶级域名主要分成两类:国家及地区双字代码顶级域(国家和地区顶级域)(英语:Country Code Top-level domains,缩写:ccTLD)和通用顶级域(英语:general Top-level domains,缩写:gTLD)。 前者基于ISO-3166规定的国家/地区双字缩写代码; 后者代表了一组名称和多个组织,包括.gov(政府,现被用于美国政府的网站),.edu(教育机构,现被用于美国各类学校的网站),.com(商业,现在成为全球注册量最大、最通用的域名),.mil(军事,现被用于美国国防部及其附属机构的网站), .org(非营利组织),.net(网络,当时被定位为网络基础服务提供商)和.int(国际组织)等。
子域名将顶级域名进一步细分。域名层次结构中,顶级域名下面是二级域名,它位于顶级域名的左侧。二级域名下面是三级域名,它位于二级域名的左侧。
域名系统中允许的字符集基于ASCII,只支持英文字母、数字和连字符(-),而不允许其他语言的文字。 于是ICANN批准了国际化域名(英语:Internationalized Domain Name,缩写:IDN)系统,该系统将其他语言对应的Unicode字符串,转换为一个名为Punycode的编码字符集。 转换结果由英文字母、数字和横线符号构成,符合传统域名的规范,这使得其他语言的文字可以注册域名,并在浏览器中访问。 例如,“中文维基百科”转换为Punycode为xn--3js032e7ich4g。 目前,许多顶级域名注册管理机构,已允许注册IDN域名,比如由VeriSign运营的.com; 而一些带有除英文外的其他文字的顶级域名,就是基于IDN实现的,比如由中国互联网络信息中心运营的“.中国”顶级域名。