-
2020-06-04 13:05:07
背景
前段时间,有人问我 baidu.com 到底是一级域名还是二级域名,一直以为是二级域名,不是很确定,所以各种谷歌百度了一下,发现大家说的也不太一样,然后又找了很多资料,以下是我的理解,如果有不对的地方请指正。
开始
“.”
首先来说域名最后的".",每个域名后边其实都有一个".",但是一般都省略,这个其实代表的是根,也可以叫根域名,也就是全球的13台域名服务器(当然不是真的只有13台),我们可以使用dig命令来查看。
root@1 # dig +trace www.baidu.com ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> +trace www.baidu.com ;; global options: +cmd . 364 IN NS g.root-servers.net. . 364 IN NS f.root-servers.net. . 364 IN NS b.root-servers.net. . 364 IN NS c.root-servers.net. . 364 IN NS l.root-servers.net. . 364 IN NS i.root-servers.net. . 364 IN NS k.root-servers.net. . 364 IN NS e.root-servers.net. . 364 IN NS j.root-servers.net. . 364 IN NS m.root-servers.net. . 364 IN NS d.root-servers.net. . 364 IN NS h.root-servers.net. . 364 IN NS a.root-servers.net.
数了数确实是13个。
顶级域名(TLD)
我们常见的 .com 就是顶级域(顶级域名),其他常用的顶级域名还有org、net、edu等,这些是通用顶级域,还有国家级顶级域,例如中国的国家级顶级域就是.cn,不同的顶级域对应不同的应用场景:
- 用于科研机构的.ac;
- 用于工商金融企业的.com;
- 用于教育机构的.edu;
- 用于政府部门的.gov;
- 用于互联网络信息中心和运行中心的.net;
- 用于非盈利组织的.org
二级域名(SLD)
baidu.com 这是二级域名,有的资料把它归为一级域名,其实是错误的,根据Dynadot(ICANN认可的域名注册和虚拟主机商)的说法,这个是二级域名,二级域名部分是baidu,而一级域名其实也就是顶级域名(资料里并没有一级域名的说法,所谓的一级域名只是不专业的说法)。
子域名
www.baidu.com、tieba.baidu.com、map.baidu.com,这些都是baidu.com这个二级域名的子域名,或者称为主机名,有些人认为www、tieba、map这些是三级域名,这些其实是主机名,而不是三级域名,下面会介绍三级域名。
有人问www.baidu.com是几级域名,准确的说是基于baidu.com这个二级域名的子域名,也可以简单的说是一个二级域名。
三级域名
三级域名要和子域名区分,www.baidu.com 是二级域名baidu.com下的子域名、baidu.com.cn这个是一个三级域名,三级域名部分就是baidu,二级域名部分是com,顶级域名部分是cn。
更多相关内容 -
host命令 域名查询
2021-01-09 21:26:51它通常用于将名称转换为IP地址,反之亦然。 如果没有给出参数或选项,host将打印其命令行参数和选项的简短摘要。 语法格式: host [参数] 常用参数: -a 显示详细的DNS信息 -c 指定查询类型,默认值为“IN”... -
domainname命令 显示和设置系统的NIS域名
2021-01-09 21:24:08常用参数: -v 详细信息模式 -F 指定读取域名信息的文件 -s 短主机域名 -I 主机的ip地址 -y NIS域名 参考实例 查看当前系统域名: [root@linuxcool ~]# domainname (none) 设置并查看当前系统域名: ... -
一文搞懂常用的网络概念:域名、动态IP、DNS、DDNS
2020-03-31 11:32:43域名和主机hostname的区别和联系 主机名代表一台主机,域名代表一个区域的名称,所以它的范围更大 一个域名下面可以有多台主机,如: abc.com这个域名下可以有这两台主机(名):server1.abc.com和server2.abc.com ...人呐,眼光放得长远一些,看到的东西也会多一些,生活也就会过得更有意义一点。
本文已被https://yourbatman.cn收录;女娲Knife-Initializr工程可公开访问啦;程序员专用网盘https://wangpan.yourbatman.cn;公号后台回复“专栏列表”获取全部小而美的原创技术专栏你好,我是方向盘(YourBatman、方哥)
目录
前言
在此之前,我对于网络通讯上的一些基础概念总是含糊其辞,感觉自己知道都又道不出个所以然,总之就是不成体系难以有个整体的把握。因此有了本文,目的是对一些平时颇为关注的网络概念进行总结,描绘出它们的关系,借此也希望能去扫清你的一些障碍,给小伙伴们分享一波。
正文
如标题所示,会针对每个基础概念分别作出即使,并且尽量给以示例。
IP地址
IP地址为每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP地址被用来给Internet上的电脑一个编号。可以把“个人电脑”比作“一台电话”,那么“IP地址”就相当于“电话号码”。
注意:“电话号码”也有局域和广域之分,比如你的员工号只在公司内部唯一,属于局域网IP。你的身份证号在全国范围内是唯一的,可类比为广域网IP。当然喽,局域和广域永远是个相对的概念~
ip地址从两种维度上来分,可以有多种:
- IPv4和IPv6
- 静态IP和动态IP
IPv4和IPv6
为何会有IPv6???因为IPv4使用32位(4字节)地址,所以它最多能够表示2的32次方,也就是4,294,967,296个地址。
40亿+
个地址这是远远不够的,因此IPv6就出现了。关于IPv6诞生的大事记:
- 1992年初,一些关于互联网地址系统的建议在IETF(互联网工程任务组)上提出,并于1992年底形成白皮书。
- 1996年开始,一系列用于定义IPv6的RFC发表出来,最初的版本为RFC1883。
- 2011年开始,主要用在个人计算机和服务器系统上的操作系统基本上都支持高质量IPv6配置产品。
- 2012年6月6日,国际互联网协会举行了世界IPv6启动纪念日,这一天,全球IPv6网络正式启动。
- 2013年9月,互联网318个中的283个顶级域名支持IPv6接入它们的DNS。
- 2017年11月26日,中共中央办公厅、国务院办公厅印发《推进互联网协议第六版(IPv6)规模部署行动计划》。
- 2018年6月,三大运营商联合阿里云宣布,将全面对外提供IPv6服务,并计划在2025年前助推中国互联网真正实现“IPv6 Only”。
IPv4
4字节长的ip称为IPv4,目前大部分ip都是IPv4。例如:
192.168.1.100
局域网、内网统一采用IPv4,外网IP绝大部分还在使用IPv4,不过随着IPv4的耗尽,开始逐渐步入IPv6的时代。全球IPv4地址耗尽,中国IPv6新体系正在形成
IPv6
16字节长的ip成为IPv6。它的格式可有多种:
- IPv6地址通用冒号分割的8个区块,每个区块4个十六进制数字。如:
2400:cb00:2048:1:0:0:6ca2:c665
- 两个冒号标识多个0区块,但每个地址中双冒号最多出现一次。如:
2001:1234:4567:0000:0000:0000:8888
可缩写为2001:1234:4567::8888
- IPv6和IPv4的混合网络中,IPv6地址的最后4字节有时可用IPv4的点分四段地址。例如:
2001:1234:4567::c0a8:0a64
可以写为2001:1234:4567::192.168.10.100
静态IP和动态IP
我们已经知道,处在互联网中(若你不联网是不需要ip的,其中不联网指的是单机)的每台机器都会有一个IP地址,而这个ip可以是固定的,也可以是动态的。
静态IP
顾名思义,IP地址是静态的、固定的。我们上网时的公网IP一般使用的静态IP,它是全球唯一的。但是我们知道IP资源是有限的(特别是IPv4),因此静态IP都是收费的(而且一般还不便宜)。
静态IP由ISP(互联网服务提供商,如中国电信、中国联通等)它们分配给我们(当然你得花钱),为了节约开销,我们一般会在一个公网IP后搭建一个局域网,然后让局域网内的所有机器共享这一个/多个静态IP地址(也叫出口IP)。
当然喽:因为ip资源非常短缺,通过拨号上网/宽带上网的用户(比如你的家庭)一般不具备固定ip(毕竟宽带费并不贵嘛),而是由ISP动态分配给你一个暂时ip,这就是下文要讲的动态IP。当然这一切对你是无感知的~~~
动态IP
作为网站的服务器需要一个静态的IP地址,便于域名解析。通过Modem、ISDN、ADSL、小区宽带等方式上网的计算机每次上网所分配到的ip都不相同,这就是动态ip。因为ip资源很宝贵,大部分用户都是通过动态ip上网的,普通人一般不需要去了解动态ip,这些都是计算机系统自动完成的。
你可能会问:你每次通过
ipconfig
查看你的机器IP都是192.168.x.x
,并木有变化呀,怎么会是动态ip呢?请注意:你这个是局域网ip地址,完全可以是静态的,因为每个局域网都可以有和你一样的ip地址并不冲突(想想不同的公司是不是可以有一样的工号呀?),而本文的动态ip指的是广域网的,它是要求全球唯一的。
域名和域名解析
IP
地址对于计算机来说很不错,但对于人来说是个问题,毕竟对于人来说非常难以记忆。于是就发明了域名系统(Domain Name System, DNS)。DNS将人们可以记忆的主机名与计算机可以记忆的IP地址关联在一起,可以通过一个域名对应多个ip,来实现DNS的负载均衡。
域名和主机hostname的区别和联系
- 主机名代表一台主机,域名代表一个区域的名称,所以它的范围更大
- 一个域名下面可以有多台主机,如:
abc.com
这个域名下可以有这两台主机(名):server1.abc.com
和server2.abc.com
- 当然取名也可以是
www.abc.com
和baike.abc.com
- 所以完整的主机名很多时候这样命名:
计算机名.域名
- 当然取名也可以是
- 外网域名中,全世界不会存在相同的域名
域名解析
域名解析:根据域名解析得到IP地址。域名的解析工作由DNS服务器完成。
说明:在各大云厂商中,域名解析一般都是免费服务的。但由于各服务商规模和实力良莠不齐,解析系统的稳定性得不到有效保障,所以建议选择比较知名的域名服务商,如阿里云、腾讯云、新网等
域名解析的类型
DNS服务器会把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。域名解析时会添加解析记录,这些记录有如下常见类型:
- 主机名(A记录):A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的网页服务器(web server)上。同时也可以通过域名解析设置子域名。
- 将域名指向一个IPv4地址(例如:100.100.100.100),需要增加A记录
- 别名(CNAME记录):即:别名记录。这种记录允许您将多个名字映射到同一台计算机。 通常用于同时提供WWW和MAIL服务的计算机。例如,有一台计算机名为“host.mydomain.com”(A记录)。 它同时提供WWW和MAIL服务,为了便于用户访问服务。可以为该计算机设置两个域名解析别名(CNAME):WWW和MAIL。
- 如果将域名指向一个域名,实现与被指向域名相同的访问效果,需要增加CNAME记录
- 邮件交换记录(MX记录):即:邮件路由记录。用户可以将该域名解析到自己的邮件服务器上,然后即可自行操控所有的邮箱设置。您在线填写您服务器的IP地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。
- 建立电子邮箱服务,将指向邮件服务器地址,需要设置MX记录
- 文本记录(TXT记录):设置 TXT ,域名解析设置TXT记录以便使别人联系到您。也会提升域名邮箱发送外域邮件的成功率,之所以会提升成功率,是因为企业邮箱公司把你的域名加入白名单,以企业邮箱公司的名义发送邮件,企业邮箱公司不会互相屏蔽的。TXT的应用之一,SPF(Sender Policy Framework)记录,以防止你的邮件服务器发送的邮件被当作垃圾邮件。很典型的spf格式的txt记录例子为“v=spf1 a mx ~all”,表示只有这个域名的a记录和mx记录中的ip地址有权限使用这个域名发送邮件。更多关于SPF的信息请参见:http://www.openspf.org/
- 可任意填写,可为空。一般做一些验证记录时会使用此项,如:做SPF(反垃圾邮件)记录
A记录是把一个域名解析到一个IP地址,而CNAME记录是把域名解析到另外一个域名,而这个域名最终会指向一个A记录,在功能实现在上A记录与CNAME记录没有区别。
域名和IP的对应关系查询
通过任何一个域名可以得到其IP地址,通过任何一个IP地址也能找到它所属的域名。我们可以通过该网站实现互查:https://site.ip138.com
比如我们通过此网站查询到
www.baiud.com
对应的ip有:
那么你使用任意一个IP地址都是可以访问到百度首页的:
DNS 域名解析服务
DNS英文全称:
Domain Name System
(域名系统)。是因特网上作为域名和IP地址相互映射的一个分布式数据库。它的作用是我们仅需通过主机名即可获得该主机名对应的ip地址进而完成访问。DNS服务器
DNS服务器也叫域名服务器。域名服务器是提供域名解析的服务器,在有基本的知识下,任何人都可以搭建域名服务器,甚至是根域名服务器,有名的软件有:BIND。
DNS服务器包括路由缓存和互联网DNS服务器(比如阿里云提供的、百度提供的等等),以及13台根服务器。它对于一个域名的基本解析过程如下:
- 电脑通过路由器(或交换机)连入互联网, 为了加快访问的时间,短期内缓存使用的域名对应的ip
- 互联网DNS服务器,是路由缓存的上一级。一般为宽带运营商或者云服务提供商(如阿里云、腾讯云、AWS等)
- 一直到最后,最全的就是根服务器, 一共13台,通过物理文件的冗余,分摊全球的域名查询任务(一般为超级计算机,计算速度贼快)
域名根服务器(共计13个)
域名服务器就像许多国际组织一样,是需要被承认的,当你的根域名服务器被全世界承认,你的服务器也可以成为这其中的一员。因为互联网起源于美国,域名体系也是诞生于美国,在互联网不断扩张和发展的过程中,逐渐形成了13台服务器为全球根服务器。这13台根服务器由ICANN管理,由12个机构具体运营。13台根服务器如下图所示。
13台根域名服务器从a至m编号,分属12个运营机构运营。另外需要注意的是:13台根域名服务器不是一个物理概念,它是一个逻辑概念。根域名服务器可以由分布在全球的多个服务器组成,形成一个集群,对外统一为1台逻辑的根域名服务器。在https://root-servers.org网站上,我们能查到所有的真实服务器分布(中国境内有大几十个实例)。
全世界只有13台逻辑根域名服务器(这13台根域名服务器名字分别为“A”至“M”),由12个运营者运营,其中8个在美国,欧洲2个,位于荷兰和瑞典,亚洲1个位于日本,而真正的主根服务器并未公开。
DNS域名解析过程(web)
以浏览器上键入一个
www.baidu.com
地址为例:- 首先,浏览器会检查自己的DNS缓存
1.谷歌浏览器可这么查看chrome: chrome://net-internals/#dns
- 浏览器会查找操作系统缓存(本地hosts文件)
- 本地hosts文件
- 浏览器会把域名发送给
LDNS
(本地DNS服务器,承担了主要的域名解析工作,通过ipconfig可以查到),LDNS
首先会查询缓存记录- windows下使用
ipconfig /all
可看到你拥有的DNS服务器:
ipconfig /displaydns
可以显示出你近期访问了哪些DNS(也就是本地DNS服务器缓存)
- windows下使用
- LDNS服务器向主域名服务器(国际的顶级域名服务器,根域名服务器全球只有13台)请求解析,返回Name Server域名服务器地址(注册的域名服务器)
- LDNS服务器向注册时的服务器发出请求,最终得到与域名相对应的IP地址。
特别声明:域名不包括端口
公共DNS服务器IP地址大全
一个域名必须经过DNS服务器的解析才能得到IP地址,因此DNS服务器非常的重要。
内网域名通过内网DNS服务器去解析,内网DNS服务器一般由公司的运维负责搭建好和维护
作为重要的互联网基础设施,有很多大企业提供了一些好用的、公共的DNS服务器可以给我们使用,这里推荐几个:
百度 BaiduDNS
:180.76.76.76114 DNS
:114.114.114.114 / 114.114.115.115阿里 AliDNS
:223.5.5.5 / 223.6.6.6DNSPod DNS+(腾讯云)
:119.29.29.29 / 182.254.116.116Google DNS
:8.8.8.8 / 8.8.4.4(你若要解析到国外ip地址可用它,国内不推荐使用)- …
- 更多、更全的公共DNS服务器ip地址请参考本网站:https://dnsdaquan.com
有了这些好用的免费DNS服务器后,若我们自己购买了一个域名就可以交给它来帮我们完成域名解析(当然若你是商用的,最好还是购买付费的域名解析服务,更稳定更有保障些)。
DDNS 动态域名解析服务
DDNS
:Dynamic Domain Name Server,动态域名服务。相较于DNS就前面加了个Dynamic
表示动态的。我们知道DNS用于域名 -> IP地址的解析,那么何为DDNS呢?DDNS是将用户的动态IP地址映射到一个固定的域名解析服务上,,用户每次连接网络的时候客户端程序就会通过信息传递把该主机的动态IP地址传送给位于服务商主机上的服务器程序,服务器程序负责提供DNS服务并实现动态域名解析。
也就是说DDNS捕获用户每次变化的IP地址,然后将其与域名相对应,这样其他上网用户就可以通过域名来进行交流。而最终客户所要记忆的全部,就是记住动态域名商给予的域名即可,而不用去管他们是如何实现的。
动态域名服务的对象是指IP是动态的,是变动的。普通的DNS都是基于静态IP的,有可能是一对多或多对多,IP都是固定的一个或多个。但DDNS的IP是变动的、随机的。随着市场需求的变化,DDNS需求功能也越来越多,越来越要求方便,市场现在已经有了不少第三方DDNS方支持的设备。
关于动态域名解析服务有个非常著名的软件你肯定不陌生:花生壳
什么时候需要DDNS
目前来说,对于商业域名绝大部分还是不会使用到DDNS的,而是使用的DNS完成解析。那么什么时候需要DDNS呢,下面举出两例:
- 在家里的局域网内/公司局域网/学校局域网内,我想搭建**一台Ftp的
Server
**来共享文件,但是你知道家里的网使用的是动态IP(指的出口IP),一旦我的IP发生变化其他人使用原来域名就不能 找到这台Server 了,因此我的诉求是:即使我IP是动态的,但我希望每次通过域名都能解析到我这来,这便是DDNS可以搞定的事。 - 比如现在流行的远程摄像头(如小米摄像头),你发现不管你在哪只要通过网络就能打开摄像头查看家里的情况。IP虽然是公网动态IP,每断开一次就会变化一次,因此可以想象这也是使用的DDNS解决的。
简单描述DDNS能做什么:以把变化的IP动态地映射到域名上,通过不变的域名访问变化IP的主机;
如何自己实现DDNS
如果自己需要做一个DDNS动态域名解析,本处共介绍三种方案供以参考:
- 使用花生壳,优点太多了,稳定、内网穿透、内网端口映射。使用起来非常方便:只需要内网IP就可以搭建一台Server
- 使用
DNSPod
以及其客户端完成 - 使用Alibaba Cloud SDK for Java实现动态域名解析(DDNS),内含使用Demo哦。参考地址:https://help.aliyun.com/document_detail/141482.html
总结
关于域名、静态IP和动态IP、域名解析DNS、动态域名解析DDNS这些常用的网络概念就介绍到这了。本文还算详细的介绍了这些概念,希望对大家能够带来帮助。
- Java中InetAddress的使用(一):域名解析【享学Java】
- Java中InetAddress的使用(二):获取本机IP地址的正确姿势【享学Java】
- [享学Jackson] 一、初识Jackson – 世界上最好的JSON库
- [享学Jackson] 二、jackson-core之流式API与JsonFactory、JsonGenerator、JsonParser
- [享学Jackson] 三、jackson-databind之ObjectMapper与数据绑定、树模型
- [享学Jackson] 四、控制Jackson行为的特征们之JsonFactory.Feature、JsonGenerator.Feature、JsonParser.Feature
- [享学Jackson] 五、控制Jackson行为的特征们之JsonWriteFeature、JsonReadFeature
- [享学Jackson] 六、控制Jackson行为的特征们之MapperFeature、SerializationFeature、DeserializationFeature
- [享学Jackson] 七、Jackson使用bit位运算来开启/禁用Feature的原理解析
- [享学Jackson] 八、jackson-databind数据绑定基础配置之BaseSettings、MapperConfig、MapperConfigBase
- [享学Jackson] 九、jackson-databind数据绑定序列化/反序列化配置之SerializationConfig、DeserializationConfig
- [享学Jackson] 十、jackson-databind序列化之ObjectMapper序列化原理、序列化器匹配原理
- [享学Jackson] 十一、jackson-databind之JsonSerializer序列化器全解析
- [享学Jackson] 十二、jackson-databind反序列化之ObjectMapper反序列化原理、JsonDeserializer反序列化器全解析
- [享学Jackson] 十三、jackson-annotation注解模块全解析及Jackson注解大全
- [享学Jackson] 十四、深入理解Jackson的Module模块化设计及原理分析
- [享学Jackson] 十五、第三方模块Module的深度实践:JavaTimeModule、JSR310Module、ParameterNamesModule、Jdk8Module
- [享学Jackson] 十六、Jackson在Spring MVC中的使用之Date、JSR310时间类型的处理
- [享学Jackson] 十七、spring-web整合Jackson源码解析之Jackson2ObjectMapperBuilder
- [享学Jackson] 十八、Spring容器深度整合Jackson的桥梁之SpringHandlerInstantiator
- [享学Jackson] 十九、Spring下使用ObjectMapper的正确姿势 — Jackson2ObjectMapperFactoryBean
- [享学Jackson] 二十、Spring MVC下的Jackson — MappingJackson2HttpMessageConverter
- [享学Jackson] 二十一、Spring Boot下的Jackson — JacksonAutoConfiguration自动配置
- [享学Jackson] 二十二、Jackson与Fastjson的恩怨情仇(完结篇)
System.out.println("写得可还行?收藏再看吧,点个赞吧,分享下吧"); echo("关注公号【Java方向盘】 https://yourbatman.cn https://wangpan.yourbatman.cn"); console.log("私聊【方向盘】:fsx1056342982");
我是方向盘(YourBatman、方哥):一个前25年还不会写Hallo World、早已毕业的大龄程序员。网瘾失足、清考、延期毕业、房产中介、保险销售、送外卖…是我不可抹灭的黑标签
- 🎓2013.07 清考、毕业答辩3次未通过、延期毕业
- 🏷2013.08-2014.07 宁夏中介公司卖二手房1年,毕业后第1份工作
- ️️🏷2014.07-2015.05 荆州/武汉,泰康人寿卖保险3月、饿了么送外卖2月,还有炸鸡排、直销等第2345份工作
- 🏷2015.08 开始从事Java开发,闯过外包,呆过大厂!多年架构经验,任基础架构/中间件团队负责人
- 🏷2021.08 因“双减政策”失业!历经9面,终获美团外卖L8的offer
- 🙅🏻♀️Java架构师、Spring开源贡献者、CSDN博客之星年度Top 10、领域建模专家、写作大赛1/2届评委
- 📚将出版书籍《Spring奇淫巧技》,致力于国内zui好、zui具深度、zui实用的专栏,为市场贡献微薄之力
- 现在写纯粹技术专栏(公号后台回复专栏列表),不哗众取宠。如果你也有共鸣,可加我好友(fsx1056342982)一起进步
-
网络常用协议名称解释
2016-11-16 17:09:27在因特网上,域名服务器(Domain Name Server,DNS)执行文字名称到二进制网络地址的映射。 http://www.weixueyuan.net/view/6078.html 统一资源定位符URL(Uniform Resource Locator)是www客户机...TCP/IP协议和IP地址
为了进行网络通信,通信双方必须遵守通信协议.目前最广泛使用的是TCP/IP协议,它是Internet中各方所遵循的公共协议.TCP(Transport Control Protocol)是一种传输控制协议,IP(Internet Protocol)是一种网际协议,TCP/IP代表这两个协议的。
TCP/IP分为四个层次:- 网络接口层:负责接收和发送物理帧;
- 网络层:负责相邻节点之间的通信;
- 传输层:负责起点到终点的通信;
- 应用层:提供诸如文件传输、电子邮件等应用程序。
TCP协议将任何网络信息传输当作信息流。例如,机器A上的一个长报文发送到机器B,发送端A需要将数据分片,把一片片数据分别打包发送。数据包有一个头,指明该数据包发往何处、凶中数据在接收序列中所处的位置。每个包都按照IP地址提供的目的地从一个台机器传送到另一台机器,或从一个网络节点传送到另一个网络节点。在接收端B,这些数据包都能够按照正确的顺序重新组装起来。
TCP/IP协议是一个协议族,由一组协议组成,主要包含以下更具体的协议:- Telnet(远程登录):允许一台计算机用户登录到另一台远程计算机上,使远程操作如同在本地计算机上操作一样。
- FTP(File Transfer protocol,文件传输协议):允许用户将远程主机上的文件复制到自己的计算机上。
- SMTP(simple Mail Transfer Protocol,简单邮件传输协议):用于传输电子邮件。
- NFS(Network file Server,网络文件服务器):使多台计算机透明地访问彼此的目录。
- HTTP:一种超文本传输协议,它是基于TCP/IP协议的,是WWW浏览器和服务器之间应用层的通信协议。HTTP是一种通用、无状态、面向对象的协议。HTTP会话(事务)包括四个步骤:连接(Connection)、请求(Request)、应答(Response)和关闭(Close)。
Java语言可编写低层的网络应用。例如,传输文件,建立邮件控制器,处理网络数据等。Java语言支持的Internet协议有ftp、telnet、www等,支持网络通信的软件都在java.net包中,例如,java.net.ftp、java.net.www等。
IP地址用于指明因特网上的一台计算机在网络中的地址,用32位二进制代码表示一个网络地址。地址分A、B、C、D、E五类,常用的是A、B、C三类:- A(1.0.0.0-126.255.255.255):0,7位网络号,后24位为主机号;
- B(128.0.0.0-191.255.255.255):10,14位网络号,后16位为主机号;
- C(192.0.0.0-223.255.255.255):110,21位网络号,后8位为主机号;
- D(224.0.0.0-239.255.255.255):1110,28位多点广播组标号;
- E(240.0.0.0-254.255.255.255):1111,保留试验使用。
通常,IP地址用四段十进制数表示(8位一段)。例如:
116.255.226.187
或用文字域名表示。例如:
www.weixueyuan.net
在因特网上,域名服务器(Domain Name Server,DNS)执行文字名称到二进制网络地址的映射。
http://www.weixueyuan.net/view/6078.html
统一资源定位符URL(Uniform Resource Locator)是www客户机访问Internet时用来标识资源的名字和地址。超文本链路由统一资源定位符URL维持。URL的格式是:
<METHOD>://<HOSTNAME:PORT>/<PATH>/<FILE>
其中:Method是传输协议:HOSTNAME是文档和服务器所在的Internet主机名(域名系统中DNS中的点地址);PORT是服务端口号(可省略);PATH是路径名,FILE是文件名。例如:
http://www.weixueyuan.net/(http是协议名,www.weixueyuan.net是主机名)
http://www.weixueyuan.net/view/6079.html (www.weixueyuan.net是主机名,view/6079.html是文件路径和文件名)URL类
Java.net包有URL类,一个URL对象可以表示一个网络资源。程序利用URL对象能实现Internet寻址、网络资源的定位连接、在客户机与服务器之间直接访问等。URL类的构造方法是
URL(String s)
其中,s指出网络中的一个资源。
利用URL对象访问网上资源的方法是:先创建URL对象,如以下代码所示:
URL myURL;
try {
myURL = new URL(“http://www.weixueyuan.net:80/”);
}catch(MalformedURLException e){
System.out.println(“有错的URL:”+url+e);
}
因创建URL对象可能会产生MalformedURLException异常。所以,创建URL对象的代码应出现在try…catch语句块中,以便能捕捉网址错误异常。URLConnection类
要接收和发关信息还要用URLConnection类,程序获得一个URLConnection对象,相当于完成对指定URL的一个HTTP连接。以下是示意获得URLConnection对象的代码。
URL mu = new URL(“http://www.sun.com/”);//先要创建一个URL对象
URLConnection muC = mu.openConnection();//获得URLConnection对象
上述代码说明,先要创建一个URL对象,然后利用URL对象的openConnection()方法,从系统获得一个URLConnection对象。程序有了URLConnection对象后,就可使用URLConnection类提供的以下方法获得流对象和实现网络连接:- getOutputStream():获得向远程主机发送信息的OutputStream流对象;
- getInputStream():获得从远程主机获取信息的InputStream流对象。有了网络连接的输入和输出流,程序就可实现远程通信;
- connect():设置网络连接。
信息的发送和接收
发送和接收信息要获得流对象,并由流对象创建输入或输出数据流对象。然后,就可以用流的方法访问网上资源。
参见【例 13-2】程序中的方法readByURL(),该方法说明已知网址读取网页内容的过程。方法利用网址参数创建一个URL对象url,接着利用对象url的openConnect()方法,获得URLConnection对象tc,用对象tc的connect()方法建立网络连接,接着获得网络连接的InputStreamReader类对象in,将对象in,转化成为BufferedRead对象dis,改为缓冲式输入。最后,用对象dis的readLine()方法完成读取网络文本数据。
如同本地数据流一样,网上资源使用结束后,数据流也应及时关闭。例如,代码
dis.close();
关闭先前代码建立的流dis。
http://www.weixueyuan.net/view/6079.html
-
域名系统的主要功能是什么
2021-08-08 10:01:20域名系统是将域名和IP地址相互映射的一个分布式数据库,主要功能是提供域名解析服务,并将域名解析为IP地址,实现用户访问网站时只用输入域名即可访问的功能,能够使人更方便地访问互联网。域名系统的主要功能是:...域名系统是将域名和IP地址相互映射的一个分布式数据库,主要功能是提供域名解析服务,并将域名解析为IP地址,实现用户访问网站时只用输入域名即可访问的功能,能够使人更方便地访问互联网。
域名系统的主要功能是:提供域名解析服务,将域名解析为IP地址,实现用户访问网站时只用输入域名即可访问的功能。
域名系统(DNS)是Internet上解决网上机器命名的一种系统,是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
域名系统(DNS)使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。
域名结构:
域名系统(DNS)是由解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。
根据域名服务器所起到的作用,可以把域名服务器分为四种不同的类型:
域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器。将域名映射为IP地址的过程就称为“域名解析”。
域名系统(DNS)的工作原理:
第一步:客户机提出域名解析请求,并将该请求发送给本地的域名服务器。
第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。
第三步:如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。
第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。
第五步:重复第四步,直到找到正确的纪录。
第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。
以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!
-
解析域名命令
2021-09-12 13:21:12Linux下解析域名除了使用nslookup之外,也可以使用dig命令来解析域名,dig命令可以得到更多的域名信息。 dig的全称是 (domain information groper)。它是一个用来灵活探测DNS的工具。它会打印出DNS name server的... -
几款好用的子域名收集工具
2021-12-21 09:28:13目录 前言 一、利用工具 oneforall 二、利用搜索引擎 fofa_view ...收集子域名的工具和方式有很多,但是有很多工具并不是很好用,我觉得在爆破子域名的...整理一下自己常用的几款工具。 Layer子域名挖掘机 oneforal -
什么是一级域名?一级域名和二级域名的区别是什么?
2021-09-26 17:11:49域名是由一串用点分隔的字母和数字组成的internet上某台计算机或计算机组的名称,用于在数据传输时对计算机进行定位标识,相当于计算机的门牌号。域名通常由有规律的数字或字母组成,相比IP地址更便于用户的识别和... -
6.2 详解DNS域名解析系统(域名、域名服务器[根、顶级、授权/权限、本地]、域名解析过程[递归与迭代])
2020-04-17 21:47:30域名 1.DNS系统 域名系统(Domain Name System, DNS)是因特网使用的命名系统,用来把便于人们记忆的具有特定含义的主机名(如www.BitHachi.com)转换为便于机器处理的IP地址。 相对于IP地址,人们更喜欢使用具有特定... -
什么是顶级域名、地理域名和个性域名
2020-07-13 15:53:48现在最通俗的域名类别可分为国际域名和国内域名,两者的主要区别在于域名划分方式和管理机构不同。要解释什么是国际域名,什么是国内域名,还要从域名体系说起。互联网上的域名体系中共有三类顶级域名:类别顶级域名... -
Linux常用命令,Linux常用基本命令大全
2022-03-19 07:58:25Linux常用命令大全整理前言 最近在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的Linux... -
Windows CMD常用命令大全(值得收藏)
2021-08-22 10:45:42Windows CMD常用命令大全前言1. 常用命令1.1 cd命令1.2 查看目录文件1.3 创建目录和删除目录1.4 查看本机ip1.5 清除屏幕1.6 复制文件1.7 移动文件1.8 删除文件1.9 ping1.10 taskkill1.11 netstat 查看网络连接状态... -
Linux常用命令
2018-11-08 11:49:238.3 域名映射 九、定时任务指令crontab 配置 9.1 命令格式 9.2 配置说明、实例 十、其他命令 10.1 查看当前目录:pwd 10.2 查看进程:ps -ef 10.3 结束进程:kill 10.4 网络通信命令... -
什么是域名 和 域名服务器(DNS)???
2020-05-06 15:20:02域名(英语:Domain Name),又称网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识(有时也指地理位置)。 为什么要有域名 ? 由于IP地址具有不... -
DNS(域名系统)是什么?
2020-07-14 17:54:08DNS是一种分布式网络目录服务,主要用于域名与IP地址的相互转换,目前大部分因特网服务都依赖DNS工作,如果DNS服务出现错误,就会导致无法连接...我们常用的方式就是在浏览器中输入要访问的网址链接(例如www.exampl... -
计算机网络-域名与IP地址详解
2019-11-04 19:51:57计算机网络-域名与IP地址详解 域名(Domain Name) 用户所在主机名字或地址 一个完整的域名如下: 计算机主机名.本地名.组名.最高层域名 ...dzkjdx/263:组织名称 www:万维网 域名和IP地址... -
服务器 域名 解析ip
2021-08-13 01:18:34服务器 域名 解析ip 内容精选换一换在大型网络应用中,通常会使用多台服务器提供同一个服务。为了平衡每台服务器上的访问压力,通常会选择采用负载均衡来实现,提高服务器响应效率。云解析服务支持解析的负载均衡,... -
各个域名后缀含义
2017-05-29 15:51:31很多人在注册域名的时候不明白域名后缀的含义,在这里就介绍两种最为常用的域名,介绍下他们的区别以及适用的范围。需要先查询是否被注册,我们经常去的就是西部数据和万网,查询并注册未被注册的域名,一般无论是... -
什么是域名?
2019-06-20 13:38:46域名(英语:Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。 网域名称系统(DNS,Domain Name... -
关于域名的一些知识
2022-03-21 15:11:401、所有域名都是以www开头的对吗? ...在这个空间中:一样有用的事物,称为一样“资源”;并且由一个全域“统一资源标识符”(URL)标识。...从另一个观点来看,万维网是一个透过网络存取的互连超文件...域名(Dom -
子域名挖掘,子域名爆破,Python脚本编写(Python安全攻防)。
2021-11-17 20:57:49子域名挖掘,子域名爆破,Python脚本编写(参考Python安全攻防渗透测试实战指南)。 -
Java中InetAddress的使用(一):域名解析【享学Java】
2020-03-31 22:19:44你要进行网络编程就得有IP地址、域名、主机等要素,而一个`InetAddress`里就保存着IP地址,同时还**可能**包含主机名,并且它提供了主机名 - IP地址**互转**的方法(比简单的域名解析还牛有木有),本来主要就介绍它... -
史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!
2020-04-03 14:32:39在日常工作中,几乎不会建立文件的硬链接,知道即可 打包压缩 打包压缩 是日常工作中备份文件的一种方式 在不同操作系统中,常用的打包压缩方式是不同的选项 含义 Windows 常用 rar Mac 常用 zip Linux 常用 tar.gz ... -
域名信息收集基础
2022-03-11 18:31:15域名(Domain Name)是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称 域名的分类 国际域名:.com(商业公司)、.net(网络服务)、.org(组织协会)、.gov(政府部门)、.edu(教育机构)、.mil(军事... -
如何购买域名?怎样购买到自己的域名?
2021-10-14 16:14:471.什么是域名? 最开始,域名是一串数字,单不利于记忆,为了用户方便记忆改成了字符型地址方案,即所谓的域名地址。也可以说域名是您的品牌网站在网络上的唯一地址。 ...2.怎么购买域名?...常用的域 -
如何设置计算机的IP地址和DNS域名服务器
2021-06-23 02:07:48设置IP地址和DNS域名服务器的方法与常用的Windows XP相比,Windows 7添加了用于网络设置的“网络和共享中心”模块,从而可以进行更集中的网络设置和处理网络问题. 因此,要设置IP地址和DNS,首先需要输入“网络和... -
本地域名是什么意思?本地域名服务器在哪?
2021-08-05 06:05:48申请域名后投入使用就会出现本地域名解析服务,需要通过域名服务器来操作。有些人在解析时会遇到一些问题,比如本地域名服务器在哪?下面新网就给大家进行的专业的解答。一、本地域名是什么意思?本地域名:一般是指... -
域名系统的工作原理_域名系统如何工作
2020-06-13 09:30:12域名系统的工作原理 域名系统。 从最基本的角度来看,域名系统( DNS )是人类可读域名(例如google.com或amazon.com)和IP地址之间的翻译目录。 什么是IP地址?... 有两种和常用的IP地址版...