【Linux网络基础】 DNS:介绍、作用、解析原理

1. DNS是什么?

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去+·记住能够被机器直接读取的IP数串。

通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。

DNS协议运行在UDP协议之上,使用端口号53。

访问网站的实质就是解析其域名得到IP地址,再转向其网站。

就是将浏览器中的 www.baidu.com 通过DNS解析得到IP地址:183.232.231.172

2. DNS的作用

  • A记录,即Address记录:  www.baidu.com --> 183.232.231.172
  • CNAME 起别名,常备CDN服务上应用
  • MX解析记录  [email protected] 搭建邮件服务
  • PTR 反向解析,1.1.1.1 -->www.domain.com 邮件服务

A记录的解析过程:
浏览器--> www.etiantian.org --> 网站服务器的ip地址 --> ip地址对应的网站服务器

3. DNS的解析原理

原理步骤:

  1. 系统首先会查找本地的DNS缓存hosts文件信息,确认其中是否有与 域名www.baidu.com所对应的IP地址。

如果有,就直接访问这个IP地址所对应的www.baidu.com 域名服务器.

# macbook的hosts文件信息
192:etc zoe$ cat /etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1    localhost
255.255.255.255    broadcasthost
::1             localhost
139.224.179.40  dcba
10.86.212.19   pi01
10.86.212.56   pi02

# 虚拟机上linux的hosts信息
[[email protected] ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
  1. 如果没有找到,那么,系统将会把浏览器的解析请求发送给  本地主机所指定的DNS服务器,称为LDNS
    如果LDNS服务器中有域名www.baidu.com 所对应的IP地址,则返回给客户端的浏览器,如果没有,则继续请求其他DNS服务器。
  1. LDNS服务器会从DNS系统的根(.)开始请求对域名 www.baidu.com 的解析。根DNS服务器全球只有13台,根域名服务器是没有域名 www.baidu.com 解析记录的。但是它会有域名 www.baidu.com 所对应的顶级域 .com的解析记录,因此直接把顶级域 .com所对应的DNS地址返回给LDNS服务器。
  1. LDNS服务器获取到顶级域.com对应的DNS服务器地址后,就会去.com服务器请求对www.baidu.com 域名的解析。在顶级域名服务器也不会有 www.baidu.com 的解析记录。但是它具有www.baidu.com 的父级域名的解析记录,即baidu.com。 因此顶级域名 .com服务器又会把 baidu.com 所对应的DNS服务器的IP地址返回给LDNS。
  1. LDNS服务器收到baidu.com 所对应的IP地址后,就会去baidu.com域名服务器请求对 www.baidu.com 的域名解析。Baidu.com 域名对应的DNS服务器是该域名的授权DNS服务器。这个DNS服务器就是企业购买域名时用于管理解析的服务器。
  1. baidu.com 域名DNS服务器会把 www.baidu.com 域名所对应的IP地址给解析出来,然后发送给LDNS。
  1. LDNS把解析出来的结果,www.baidu.com 所对应的IP地址发送给客户端的浏览器。并且LDNS也会将其域名和对应的地址缓存到cache中。
  1. 客户端浏览器收到后,也会将其域名以及对应的IP地址缓存到DNS缓存和hosts文件中。

知识梳理:

DNS数据库的结构如下图所示,就像一棵倒挂着的树。

它的顶点也是根(.)

全球总共有 13台 根DNS服务器。

顶级域名 org, com, net, me, cc,

一级域名:baidu, sina, google, alibaba, taobao

DNS域名解析命令:

  • dig
  • nslookup
  • host
  • ping

dig命令解析dns

192:etc zoe$ dig @8.8.8.8 www.baidu.com +trace

; <<>> DiG 9.10.6 <<>> @8.8.8.8 www.baidu.com +trace
; (1 server found)
;; global options: +cmd
.            211565    IN    NS    a.root-servers.net.
.            211565    IN    NS    b.root-servers.net.
.            211565    IN    NS    c.root-servers.net.
.            211565    IN    NS    d.root-servers.net.
.            211565    IN    NS    e.root-servers.net.
.            211565    IN    NS    f.root-servers.net.
.            211565    IN    NS    g.root-servers.net.
.            211565    IN    NS    h.root-servers.net.
.            211565    IN    NS    i.root-servers.net.
.            211565    IN    NS    j.root-servers.net.
.            211565    IN    NS    k.root-servers.net.
.            211565    IN    NS    l.root-servers.net.
.            211565    IN    NS    m.root-servers.net.
.            211565    IN    RRSIG    NS 8 0 518400 20191005050000 20190922040000 59944 . kFUBbJE9raFU30U6hkdXdjkSmMeokgUl7GMZokb1cX7XAIXMuJSlqtxP 1zouEX6o/49O4pwIJL8DlCOpAJ+Fk84xbY+0i32BAlkTPBd6KwqU7Fra UaKe1a6ylMFg6Ov4kaTpL/Y4njrobc3N+FL0pBZX6/hH5ltNVyutpiDt 3ZXWjCqHy8tJcd/MV4zIbvlLZ52cLCufzIxAVQrbryg4tpkkUrb+BiR8 VYuBG/y+RToCZRgmf3vTX06G3RKADwcOBiBj0jt/RQMCZjC4BGdTD/H9 bwyaKEXRjCi53AspEDfI7hF+uPHB+Fd+lRa9rjGi5jyf+e56dKg6IKsp 1VqSSQ==
;; Received 525 bytes from 8.8.8.8#53(8.8.8.8) in 200 ms

com.            172800    IN    NS    l.gtld-servers.net.
com.            172800    IN    NS    b.gtld-servers.net.
com.            172800    IN    NS    c.gtld-servers.net.
com.            172800    IN    NS    d.gtld-servers.net.
com.            172800    IN    NS    e.gtld-servers.net.
com.            172800    IN    NS    f.gtld-servers.net.
com.            172800    IN    NS    g.gtld-servers.net.
com.            172800    IN    NS    a.gtld-servers.net.
com.            172800    IN    NS    h.gtld-servers.net.
com.            172800    IN    NS    i.gtld-servers.net.
com.            172800    IN    NS    j.gtld-servers.net.
com.            172800    IN    NS    k.gtld-servers.net.
com.            172800    IN    NS    m.gtld-servers.net.
com.            86400    IN    DS    30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com.            86400    IN    RRSIG    DS 8 1 86400 20191006050000 20190923040000 59944 . Pe9CAXBj4SVoH+viy4eJMGSCOQZPWyPH6sOoNRE1O7ScsqdNPqaLBLYt DRXEAmwC+wKiqiLbwTcIzQbraifFDOeftMXeA4Zx23AXuuU2w84PWe1h 0TqgQwGyZnEIhbEj9OryhTvc/LcC1Govyk6cgDhJhxVNy3A2fhDU5eOp KcbxEp5VeLMtilQMdrjPSMQAy8RNDgoHvd5YBmpjUlGquvpASHEItZlZ hT6dWQYSqroI4ruyt6xCvrcKCma2nyR78FcZZLdg2jTJFaBsOaAsnI0V nfrWXsD09S4EvTHq+SIEIHyvJgC2+HKScUUlJgXTDAdd0zLxlQqW4fcn z5xhyQ==
;; Received 1173 bytes from 192.5.5.241#53(f.root-servers.net) in 41 ms

baidu.com.        172800    IN    NS    ns2.baidu.com.
baidu.com.        172800    IN    NS    ns3.baidu.com.
baidu.com.        172800    IN    NS    ns4.baidu.com.
baidu.com.        172800    IN    NS    ns1.baidu.com.
baidu.com.        172800    IN    NS    ns7.baidu.com.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A  NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20190928044441 20190921033441 17708 com. G131mLtsBTVuH1wpOFbRs0/voaY+V7rxVJHc9XWhCelqZkbFiB6tVxKw oqpWdiXL+p4V40G3Koo8Y7y/Qd2M+hV4edC0nal1RrNt97hkRLQAcTJ/ wHZcMl84JbDtZT44UY1iHWv4GUxlxyaQiew/YceADjSzNtqG8mU1zNhC P1g=
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN NSEC3 1 1 0 - HPVVN3Q5E5GOQP2QFE2LEM4SVB9C0SJ6  NS DS RRSIG
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN RRSIG NSEC3 8 2 86400 20190930045238 20190923034238 17708 com. k5LZWJ8Oa5v6NqVOZ9PUeDx0vdwV6gFSH0EZp9rFHr9GeAYPOnr0ucQX XogUAJweh+CvXYMqFa3s3ZQUsqbRv2O5XTjKuZDrOzBSPooK3csZ1tJy q5HdJczJeMVTdHsbaVcO2Kt1Iwl+5Obl8UCt60ZfyTQoegAI+dtQdPNa ADA=
;; Received 697 bytes from 192.41.162.30#53(l.gtld-servers.net) in 266 ms

www.baidu.com.        1200    IN    CNAME    www.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns3.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns4.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns5.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns2.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns1.a.shifen.com.
;; Received 239 bytes from 14.215.178.80#53(ns4.baidu.com) in 42 ms

192:etc zoe$
192:etc zoe$ dig @8.8.8.8 www.baidu.com +trace

; <<>> DiG 9.10.6 <<>> @8.8.8.8 www.baidu.com +trace
; (1 server found)
;; global options: +cmd
.            197496    IN    NS    a.root-servers.net.
.            197496    IN    NS    b.root-servers.net.
.            197496    IN    NS    c.root-servers.net.
.            197496    IN    NS    d.root-servers.net.
.            197496    IN    NS    e.root-servers.net.
.            197496    IN    NS    f.root-servers.net.
.            197496    IN    NS    g.root-servers.net.
.            197496    IN    NS    h.root-servers.net.
.            197496    IN    NS    i.root-servers.net.
.            197496    IN    NS    j.root-servers.net.
.            197496    IN    NS    k.root-servers.net.
.            197496    IN    NS    l.root-servers.net.
.            197496    IN    NS    m.root-servers.net.
.            197496    IN    RRSIG    NS 8 0 518400 20191005050000 20190922040000 59944 . kFUBbJE9raFU30U6hkdXdjkSmMeokgUl7GMZokb1cX7XAIXMuJSlqtxP 1zouEX6o/49O4pwIJL8DlCOpAJ+Fk84xbY+0i32BAlkTPBd6KwqU7Fra UaKe1a6ylMFg6Ov4kaTpL/Y4njrobc3N+FL0pBZX6/hH5ltNVyutpiDt 3ZXWjCqHy8tJcd/MV4zIbvlLZ52cLCufzIxAVQrbryg4tpkkUrb+BiR8 VYuBG/y+RToCZRgmf3vTX06G3RKADwcOBiBj0jt/RQMCZjC4BGdTD/H9 bwyaKEXRjCi53AspEDfI7hF+uPHB+Fd+lRa9rjGi5jyf+e56dKg6IKsp 1VqSSQ==
;; Received 525 bytes from 8.8.8.8#53(8.8.8.8) in 265 ms

com.            172800    IN    NS    l.gtld-servers.net.
com.            172800    IN    NS    b.gtld-servers.net.
com.            172800    IN    NS    c.gtld-servers.net.
com.            172800    IN    NS    d.gtld-servers.net.
com.            172800    IN    NS    e.gtld-servers.net.
com.            172800    IN    NS    f.gtld-servers.net.
com.            172800    IN    NS    g.gtld-servers.net.
com.            172800    IN    NS    a.gtld-servers.net.
com.            172800    IN    NS    h.gtld-servers.net.
com.            172800    IN    NS    i.gtld-servers.net.
com.            172800    IN    NS    j.gtld-servers.net.
com.            172800    IN    NS    k.gtld-servers.net.
com.            172800    IN    NS    m.gtld-servers.net.
com.            86400    IN    DS    30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com.            86400    IN    RRSIG    DS 8 1 86400 20191006050000 20190923040000 59944 . Pe9CAXBj4SVoH+viy4eJMGSCOQZPWyPH6sOoNRE1O7ScsqdNPqaLBLYt DRXEAmwC+wKiqiLbwTcIzQbraifFDOeftMXeA4Zx23AXuuU2w84PWe1h 0TqgQwGyZnEIhbEj9OryhTvc/LcC1Govyk6cgDhJhxVNy3A2fhDU5eOp KcbxEp5VeLMtilQMdrjPSMQAy8RNDgoHvd5YBmpjUlGquvpASHEItZlZ hT6dWQYSqroI4ruyt6xCvrcKCma2nyR78FcZZLdg2jTJFaBsOaAsnI0V nfrWXsD09S4EvTHq+SIEIHyvJgC2+HKScUUlJgXTDAdd0zLxlQqW4fcn z5xhyQ==
;; Received 1173 bytes from 192.203.230.10#53(e.root-servers.net) in 41 ms

baidu.com.        172800    IN    NS    ns2.baidu.com.
baidu.com.        172800    IN    NS    ns3.baidu.com.
baidu.com.        172800    IN    NS    ns4.baidu.com.
baidu.com.        172800    IN    NS    ns1.baidu.com.
baidu.com.        172800    IN    NS    ns7.baidu.com.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A  NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20190928044441 20190921033441 17708 com. G131mLtsBTVuH1wpOFbRs0/voaY+V7rxVJHc9XWhCelqZkbFiB6tVxKw oqpWdiXL+p4V40G3Koo8Y7y/Qd2M+hV4edC0nal1RrNt97hkRLQAcTJ/ wHZcMl84JbDtZT44UY1iHWv4GUxlxyaQiew/YceADjSzNtqG8mU1zNhC P1g=
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN NSEC3 1 1 0 - HPVVN3Q5E5GOQP2QFE2LEM4SVB9C0SJ6  NS DS RRSIG
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN RRSIG NSEC3 8 2 86400 20190930045238 20190923034238 17708 com. k5LZWJ8Oa5v6NqVOZ9PUeDx0vdwV6gFSH0EZp9rFHr9GeAYPOnr0ucQX XogUAJweh+CvXYMqFa3s3ZQUsqbRv2O5XTjKuZDrOzBSPooK3csZ1tJy q5HdJczJeMVTdHsbaVcO2Kt1Iwl+5Obl8UCt60ZfyTQoegAI+dtQdPNa ADA=
;; Received 697 bytes from 192.43.172.30#53(i.gtld-servers.net) in 192 ms

www.baidu.com.        1200    IN    CNAME    www.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns4.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns1.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns3.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns5.a.shifen.com.
a.shifen.com.        1200    IN    NS    ns2.a.shifen.com.
;; Received 239 bytes from 14.215.178.80#53(ns4.baidu.com) in 43 ms

nslookup域名解析

[[email protected] ~]# nslookup
> baidu.com
Server:         192.168.1.1
Address:        192.168.1.1#53

Non-authoritative answer:
Name:   baidu.com
Address: 39.156.69.79
Name:   baidu.com
Address: 220.181.38.148

host域名

[[email protected] ~]# host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 183.232.231.174
www.a.shifen.com has address 183.232.231.172

ping 域名返回地址

[[email protected] ~]# ping www.baidu.com
PING www.baidu.com (183.232.231.174) 56(84) bytes of data.
64 bytes from 183.232.231.174: icmp_seq=1 ttl=55 time=43.8 ms
64 bytes from 183.232.231.174: icmp_seq=2 ttl=55 time=44.2 ms

原文地址:https://www.cnblogs.com/zoe233/p/11823857.html

时间: 2024-08-28 11:05:09

【Linux网络基础】 DNS:介绍、作用、解析原理的相关文章

linux网络基础设置 以及 软件安装

一. linux网络基础设置 网络设置基本可以分为:网卡设置.网关设置.DNS设置三部分 ifconfig命令 ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数.用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在.要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了. 参数 add<地址>:设置网络设备IPv6的ip地址: del<地址>:删除网络设备IPv6的IP地址: down:关闭指定的网络设备: up:启动指定的网络

8.Linux网络基础配置

8.Linux网络基础配置 ·在Linux中,以太网接口被命名为eth0,eth1等,0,1代表网卡编号, ·查看: ·通过lspci查看网卡硬件信息,如果是usb网卡,可以运行lsusb, ·ifconfig -a查看所有接口,ifconfig eth0查看特定接口, ·ifup eth0启动接口,ifdown eth0禁用接口, ·配置:运行setup配置网卡, ·网卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0, ·DNS配置文件/etc/re

Linux网络服务01——Linux网络基础设置

Linux网络服务01--Linux网络基础设置 一.查看及测试网络 1.使用ifconfig命令查看网络接口 (1)查看活动的网络接口 ifconfig命令 [[email protected] ~]# ifconfigeth0 Link encap:Ethernet HWaddr 00:0C:29:D5:3A:FA inet addr:192.168.200.100 Bcast:192.168.200.255 Mask:255.255.255.0 inet6 addr: fe80::20c:

Linux高性能服务器编程——Linux网络基础API及应用

 Linux网络编程基础API 详细介绍了socket地址意义极其API,在介绍数据读写API部分引入一个有关带外数据发送和接收的程序,最后还介绍了其他一些辅助API. socket地址API 主机字节序和网络字节序 字节序分为大端字节序和小端字节序.小端字节序又被称为主机字节序,大端字节序被称为网络字节序.大端字节序是指一个整数的高位字节存储在内存的低地址处,低位字节存储在内存的高地址处.小端字节序则相反. Linux提供如下四个函数完成主机字节序与网络字节序之间的转换: #include

【Linux网络基础】上网原理流程

1. 局域网用户上网原理 上网过程说明: 确保物理设备和线路架构准备完毕,并且线路通讯状态良好 终端设备需要获取或配置上局域网(私有地址)地址,作为局域网网络标识 当终端设备想上网时,首先确认访问的地址,是否在本局域网内,若不在需要先告知网关 网关地址配置在路由器的内网接口上,路由器根据请求,将流量进行路由转发给外网设备,让外网设备协助进行流量转发. 需要注意:家用路由器实际上并不是路由器,而是一个NAT地址转换设备. 猫等运营商设备通过获取路由器的拨号信息,将信息进行上传,确认无误后,便可建立

linux网络基础配置与网络进阶管理

一. 网络基本配置: 真不敢想象没有网络的一天 应该怎样度过,但是有了网络就行了?原来刚有了网络时由于没有统一的标准,各大硬件厂商各自为政,都在搞网络,但是都只是同一厂商的设备可以进行通讯,就 和不同的国家的人交流使用了不同的语言一样,难以将所有的网络连接起来,之后Internet有了统一的标准,大家都遵循它的标准,后来计算机才能进行网 络通讯,同样将linux主机接入网络也必须进行配置它的网络,及其相关的主机名等,下面将逐一进行配置: 1.  主机名: rhel6中主机名修改 [[email 

linux网络基础

学习linux,网络基础尤为关键,这是架设服务器的根基,没有网络,就没有服务. 简单介绍下网络常用的命令 ifconfig:传统的配置网络接口的命令 route:主要是配置路由功能 ip:集成了网络接口和路由配置,建议使用这个命令 hostname:设置主机名 ping:测试网络的连通性 host:dns信息查询 nslookup:dns解析查询 tcpdump:抓包工具,类似wireshark netstat:查看网络连接状态 ss:查看网络连接状态,推荐使用 1      ip路由 网络属于

Linux自学笔记——Linux网络基础、命令及属性配置

网络对于Linux来说不可或缺的一部分,本文主要对linux网络的基础知识,常用配置命令以及linux配置文件的属性等等作一个总结. 计算机网络: TCP/IP协议栈: TCP/IP分为4层,分别为应用层,传输层,网络互连层,主机到网络层,不同于OSI,他将OSI中的会话层.表示层规划到应用层,把数据链路层和物理层划分给主机到网络层. OSI,Open System Interconnection,开放式系统互联,国际化标准组织ISO制定了OSI模型,该模型定义了不同计算机互联的标准,是设计和描

DNS系统的解析原理

根据网络通讯原理,对于Router设备是通过IP地址进行路径的Forward:当通过域名(主机名)访问远程主机时,必须将相应的主机名解析为IP地址,DNS服务器就充当了这个角色. DNS的工作原理: 在浏览器中输入www.qq.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析. 如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析. 如果hosts与本地DN