生成HTTP报文后,因为我们输入的是服务器的域名,但在包体的发送中需要的是服务器的IP地址,所以接下来的工作就是查找服务器的IP地址,而查询IP地址,就需要DNS服务器来帮忙了。

IP地址简介:

IP地址是32比特的数字构成的,一共4个字节,用十进制表示,然后原点隔开。共网络号+主机号两部分,但分配关系不确定。

IP地址表示方法:

10.11.12.13

子网掩码:用来区分IP地址内部结构的附加信息,是一串与IP地址长度相同的32比特数字,子网掩码为1的部分表示网络号,为0的部分表示主机号;其中主机号部分全部为0代表整个子网,主机号全部为1代表对子网所有设备进行广播

10.11.12.13/255.255.255.0   后四位字节就是子网掩码。

DNS解析器(客户端):

位于浏览器程序内部(Socket库),是一段代码,调用时将服务器名称填入相应位置即可进行查询。

DNS服务器:与DNS解析器对应的就是服务器,里面存放有IP地址与域名的对应关系。

在解析器和服务器内部流转的消息叫做:UDP消息

收发数据的4个阶段:

1、创建套接字阶段(连接由客户端发起)  应用程序是靠描述符来识别套接字的

2、连接阶段    连接的时候调用connect,需要指定描述符、端口号、IP地址这3个参数

3、数据传输阶段

4、断开管道并删除套接字阶段(可由客户端或服务器之一来断开)    客户端和服务器是靠端口号和IP地址来识别对方套接字的

DNS服务器的简介——2的更多相关文章

  1. 烂泥:dnsmasq搭建简易DNS服务器

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 今天我们来介绍一个比较简单的DNS服务器dnsmasq.这款软件,已经被我成功使用到公 ...

  2. DNS服务器的配置与应用: BIND9 的安装与配置

    3. BIND9 的安装与配置 3.1 bind简介 BIND (Berkeley Internet Name Domain)是Domain Name System (DNS) 协议的一个实现,提供了 ...

  3. DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置

    DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置 一.DNS简介 1.DNS    DNS是域名系统(Domain Name System)的简称,它是一个将域名和IP相互映射的分布式数据库 ...

  4. linux杂谈(十八):DNS服务器的配置(一)

    原文地址: http://blog.chinaunix.net/uid-29622064-id-4242123.html 1.DNS服务器简介 域名系统(英文:Domain Name System,縮 ...

  5. 使用queryperf对DNS服务器作压力测试

    一.querperf简介 当我们把DNS服务器配置好后,我们肯定会想测试一下DNS服务器的性能如何,上线后如果请求数够多服务器还能否响应?于是,我们可以使用软件模拟环境,对DNS服务器作评估性的测试. ...

  6. 使用bind实现主从DNS服务器数据同步

    一.bind简介 Linux中通常使用bind来实现DNS服务器的架设,bind软件由isc(www.isc.org)维护.在yum仓库中可以找到软件,配置好yum源,直接使用命令yum instal ...

  7. DNS 域名系统的简介

    一.DNS域名系统简介 1.网络中为了区别各个主机,必须为每台主机分配一个唯一的地址, 这个地址即称为“IP 地址.但这些数字难以记忆, 所以采用“域名” 的方式来取代这些数字. 2.当某台主机要与其 ...

  8. 转: centos7.5 下 coredns+etcd搭建DNS服务器

    coredns简介 CoreDNS是一个DNS服务器,和Caddy Server具有相同的模型:它链接插件.CoreDNS是云本土计算基金会启动阶段项目. CoreDNS是SkyDNS的继任者. Sk ...

  9. 2-7-搭建DNS服务器实现域名解析

    学习服务的方法: 了解服务的作用:名称,功能,特点 安装服务 配置文件的位置,端口 服务开启和关闭的脚本 修改配置文件(实战举例) 排错(从上到下,从内到外) -------------------- ...

随机推荐

  1. C# 使用 Invoke 实现函数的白盒 UT 测试

    公有方法可以直接调用,但是一些非公开的方法,在覆盖率测试的时候也需要覆盖,可以使用 Invoke 来调用. 调用方法如下,其中 this 可以改为被调用的方法所属的类名,通过 BindingFlags ...

  2. linux下安装及配置jenkins

    jenkins常用的有两种安装方式: 1.直接下载war包jenkins.war,下载地址https://jenkins.io/download 直接下载 1.1.可以把war包直接部署到servle ...

  3. Mysql学习---视图/触发器/存储过程/函数/执行计划/sql优化 180101

    视图 视图: 视图是一个虚拟表(非真实存在),动态获取数据,仅仅能做查询操作 本质:[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用.由 ...

  4. js 更改对象中的属性名

    const json = JSON.parse(JSON.stringify(options).replace(/name/g,"label")); 注: 1.options是需要 ...

  5. imooc课程:Java高并发秒杀API 记录

    Java高并发秒杀API之业务分析与DAO层 Java高并发秒杀API之Service层 Java高并发秒杀API之web层 Java高并发秒杀API之高并发优化 除了并发部分外的这个web开发的总结 ...

  6. Geekforgeek week1

    1. is palindrome solution 1: check to reverse the digit, if they are the same number https://www.gee ...

  7. (一)自定义ImageView,初步实现多点触控、自由缩放

    真心佩服那些一直专注于技术共享的大神们,正是因为他们无私的分享精神,我才能每天都有进步.近日又算是仔细学了android的自定义控件技术,跟着大神的脚步实现了一个自定义的ImageView.里面涉及到 ...

  8. PHP----作业:查询数据显示在页面上

    作业: 查询INFO表所有数据,显示在页面上(表格)性别要显示男女 民族 显示民族名称 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tra ...

  9. 6.spring:AOP(注解)

     spring Aop AOP面向切面编程,与OOP面向对象编程相辅相成 AOP中最基本的单元是切面 问题: 代码混乱:越来越多的业务需求(日志&验证)加入后,原有的业务方法急剧膨胀,每个方法 ...

  10. win10系统下多python版本部署

    说明:win10,已安装有python3.5.2,为使用新浪云应用(SAE)支持微信公众号后台开发(SAE的python运行环境使用的是2.7.9),需部署python2.7的版本以便本地编辑调试. ...