1. 网络基础
.note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB","STHeiti","Microsoft YaHei","WenQuanYi Micro Hei",SimSun,Song,sans-serif;}

.note-content h2 {line-height: 1.6; color: #0AA89E;}
.note-content {background: #FFFFFF;}
.note-content h1 {color: #7AB3A7;}
.note-content h3 {color: #147A67;}

1. 网络基础

1.6 DNS作用

○ DNS是什么?

我们把DNS称为Domain Name System的缩写,也就是域名系统,同样称为名称解析。

  • 在互联网中,通过IP地址来通信
  • IP地址用数字表示,记忆起来太困难(如116.213.120.232)
  • 人对域名(英文单词,字符串)更加敏感,如:http://www.qq.com

○ hosts文件

在系统中都存在一个文件:hosts

Windows下:C:\Windows\System32\drivers\etc\hosts

Linux下:/etc/hosts

1.127.0.0.1               localhost.localdomain 
2.(IP) (域名)

现在我们把文件改一下

1.127.0.0.1               localhost.localdomain localhost
2.::1 localhost6.localdomain6 localhost6
3.192.168.4.156 www.sina.com



发现新浪的假IP192.168.4.156其实是ping不通的。

PING www.sina.com (192.168.4.156) 56(84) bytes of data.它ping的并不是真正的新浪,这是我写的IP地址

所以,hosts是做静态测试IP和域名对应的。

只要我们把IP和域名写入hosts文件里面,它就会认为这个192.168.4.156IP的域名是www.sina.com,它优先于DNS,也就是说它优先于我们访问公网域名解析,只要你hosts文件填写了就不会去公网域名解析



而对于www.sina.com.cn的连接是没问题的,因为hosts文件并没有www.sina.com.cn这个域名主机

hosts文件的优先级是高于DNS解析的

○ 从Hosts文件到DNS

  • 早期Hosts文件解析域名

    • 名称解析效能下降(如果把全部的IP和域名写入一个文件,这个文件得有好几十GB,打开太慢)
    • 主机维护困难(要是某个人把其中一个IP改掉,可能出现错误)
  • DNS服务
    • 层次性
    • 分布式

○ DNS服务的作用

  • 将域名解析为IP地址

    • 客户机向DNS服务器发送域名查询请求
    • DNS服务器告知客户机Web服务器的IP地址
    • 客户机与Web服务器通信

举个栗子:如果我要访问qq

首先回向DNS发起一个请求,说:我要访问qq——>客户机会问DNS:你知道这个网站的IP吗?———->DNS会把IP地址告诉客户机————>客户机拿到IP之后就会去访问qq

○ 域名空间结构

域名空间结构又叫做完全合格域名

域名用”.“进行分割便于分级管理

  • 根域 —–”.“表示根域名,根域名的服务器只有13台,中国大陆是没有的
  • 顶级域(一级域)—-顶级域名是由域名分配组织ISO决定的
    • 组织域—-gov(政府部门)、com(商业部门)、edu(教育部门)、org(民间团体组织)、net(网络服务机构)、mil(军事部门)
    • 国家或地区域—-cn(中国)、jp(日本)、uk(英国)、au(澳大利亚)、hk(香港)
  • 二级域—-比如说:baidu、qq、microsoft,是个人或者企业向域名分配组织购买的
  • 主机名—-三级域名是申请完二级域名后自己规定的,一般用www表示网页服务

三级域名+二级域名+顶级域名组成完整域名空间,并且域名全球唯一的

○ DNS查询过程

DNS客户机———->本地域名服务器:

①如果本地域名服务器不知道该网站,那么会向根DNS服务器发起查询————->根DNS服务器把一级DNS服务器的IP地址给本地域名服务器————>本地域名服务器向一级DNS服务器发起请求——————>一级域名DNS服务器把二级DNS服务器的IP地址给本地域名服务器————>本地域名服务器向二级DNS服务器发起请求————–>二级DNS服务器返回网站IP地址给本地域名服务器—————>本地域名服务器把IP地址告诉DNS客户机

②如果本地域名服务器曾经向请求根DNS服务器解析过,知道该网站,那么会在本地域名服务器有该网站IP地址的缓存,一段时间后又去根服务器查询

○ DNS查询类型

  • 从查询方式分

    本地域名服务器——–>根DNS服务器:迭代查询(迭代查询允许返回一个类似值或者最优化值)

    客户机———->本地域名服务器:递归查询(递归查询是必须提供一个准确值或者是没有)

  • 从查询内容分

    • 正向查询:由域名查找IP
    • 反向查询:由IP查找域名

Linux网络管理——DNS作用的更多相关文章

  1. Linux网络管理——端口作用

    1. 网络基础 .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB",&q ...

  2. Linux网络管理——网关作用

    1. 网络基础 .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB",&q ...

  3. Linux学习笔记(10)linux网络管理与配置之一——主机名与IP地址,DNS解析与本地hosts解析(1-4)

    Linux学习笔记(10)linux网络管理与配置之一——主机名与IP地址,DNS解析与本地hosts解析 大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配 ...

  4. 学习笔记:CentOS7学习之十九:Linux网络管理技术

    目录 学习笔记:CentOS7学习之十九:Linux网络管理技术 本文用于记录学习体会.心得,兼做笔记使用,方便以后复习总结.内容基本完全参考学神教育教材,图片大多取材自学神教育资料,在此非常感谢MK ...

  5. Linux网络管理(一)之配置主机名与域名

    Linux网络管理(一)之配置主机名与域名参考自:[1]修改主机名(/etc/hostname和/etc/hosts区别) https://blog.csdn.net/shmily_lsl/artic ...

  6. Linux网络管理命令

    Linux网络管理命令 ifconfig 用于配置网卡ip地址信息等网络参数或显示网络接口状态,类似于windows的ipconfig命令. 可以用这个工具来临时性的配置网卡的IP地址.掩码.广播地址 ...

  7. linux网络管理----网络基础

    1.1 ISO/OSI 七层模型 笔记: 打入ipconfig: mac地址:Media Access Control 也是物理地址,这是由网卡决定的.负责的是内网,也就是局域网通信. IPv4地址: ...

  8. Linux学习笔记(11)linux网络管理与配置之一——配置路由与默认网关,双网卡绑定(5-6)

    Linux学习笔记(11)linux网络管理与配置之一——配置路由与默认网关,双网卡绑定(5-6) 大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配置DNS ...

  9. Linux:DNS主、从、缓存服务器配置、DNS同步加密TSIG配置、DNS分离解析配置

    DNS主服务器配置(正向解析.反向解析) 正向解析:根据主机名查找对应的IP地址.当用户访问一个域名时(不考虑hosts文件等因素),正常情况会向指定的DNS主机发送递归查询请求反向解析:根据IP地址 ...

随机推荐

  1. asp.net页面与页面之间参数传递

    传值asp文件send.aspx 代码如下 复制代码 <form id="form1" runat="server" action="recei ...

  2. apple程序生命周期

    iphone程序的生命周期分析 做iphone开发首先第一件就是得知道iphone程序的生命周期,说白点就是当点击程序图标启动程序开始到退出程序整个使用运行过程中底下的代码都发生了什么,只有理解了这个 ...

  3. c#创建带参数的线程

    1.无参数线程的创建 Thread thread = new Thread(new ThreadStart(getpic)); thread.Start(); private void showmes ...

  4. JavaScript function函数种类(转)

    转自:http://www.cnblogs.com/polk6/p/3284839.html JavaScript function函数种类 本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通 ...

  5. mysql5.6 zip版安装

    MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的.如果是msi格式的可以直接点击安装,按照它给出的安装提示进行安装(相信大家的英文可以看懂英文提示),一般MySQL将会安装在C:\P ...

  6. django随笔说明

    最近学习了vamei的快速Python教程,想着语法学了不用就要忘记,总要拿点东西来练练手,然后又开始学习Django,也算是顺势而为吧. 现在学Django,是跟着教程djangobook学的,内容 ...

  7. php 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等

    /** * 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等 * @param $id * @param $ids * @param string $returnstr * @ret ...

  8. 如何使用for循环连续的实例化多个对象!

    Test类import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Test ...

  9. AOJ 2249 Road Construction(Dijkstra+优先队列)

    [题目大意] http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2249 [题目大意] 一张无向图,建造每条道路需要的费用已经给出, 现 ...

  10. poj3589---判断两个数有多接近

    #include <stdio.h> #include <stdlib.h> int main() { ],s2[]; int a,b,i,j,n; scanf("% ...