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. 【floyed】【HDU1217】【Arbitrage】

    题目大意: 给你几种货币,以及几种汇率关系,问是否存在套利的可能? 思路: 初步想法:图上存在一个环的路径上权值相乘大于1.... 再者:该如何找到图上所有环呢.... 好吧 经过鸟神 和 况神的指点 ...

  2. 水平居中的两种方法margin text-align

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 图片占位 css

    手机端图片高度和宽度不能自动比例缩小的问题 <!DOCTYPE html> <html> <head> <meta charset="utf-8&q ...

  4. 附加导航(Affix)行为

    用法 通过 data 属性:如需向元素添加附加导航(Affix)行为,只需要向需要监听的元素添加 data-spy="affix" 即可.请使用偏移来定义何时切换元素的锁定和移动. ...

  5. C# 中的委托和事件详解

    C# 中的委托和事件 文中代码在VS2005下通过,由于VS2003(.Net Framework 1.1)不支持隐式的委托变量,所以如果在一个接受委托类型的位置直接赋予方法名,在VS2003下会报错 ...

  6. iOS各种类

    http://www.isenhao.com/xueke/jisuanji/bcyy/objc.php http://www.code4app.com 这网站不错,收集各种 iOS App 开发可以用 ...

  7. 最长增长子序列 DP

    #include<iostream> using namespace std; #define INF 0x7fffffff #define N 10000 // O(n^2) int l ...

  8. 论山寨手机与Android联姻 【10】SmartPhone的通信机制

    上一章我们说到,智能手机 == 电脑 + 移动网卡,这个提法比较粗略,更精准的提法应当是,智能手机的硬件结构分为应用程序处理器AP,和基带处理器BP两个部分.虽然AP部分的功能与电脑主板基本类似,但是 ...

  9. Hibernate 、多表关联映射 - 多对多关系映射(many-to-many)

    hibernate.cfg.xml: <hibernate-configuration> <session-factory name="sessionFactory&quo ...

  10. Struts2 二、为Action的参数注入值

    为Action参数注入值,主要使用在的场景为,Action的一个参数的值不是固定的是可以改变的,所以不能直接写在Action中,可以通过Struts配置的方式将值配置到Struts中,然后通过注入的方 ...