参考:1、DNS原理入门参考:http://www.ruanyifeng.com/blog/2016/06/dns.html

2、http://cn.linux.vbird.org/linux_server/0350dns.php

一、

域名解析与以下四个文件有关:

/etc/hosts

/etc/host.conf 

/etc/resolv.conf

/etc/nsswitch.conf

还有

/etc/hosts.allow 

/etc/hosts.deny

其中nsswitch.conf与系统获取解析的顺序有关

  nsswitch全称为: network service switch,其是一个通用框架,是各种类型存储交互的公共实现,实现名称解析服务
  例如: 用户名到ID,或者ID到用户名,再或者IP到域名的查找方式。nsswitch加载了各存储的api接口,并以模块方式装载进nsswitch中,当程序发起nsswitch的api调用时,nswitch会自动完成到各存储中查找内容

  目前观察到的情况是,当nscd服务关闭时,nsswitch可以控制dns(/etc/resolv.conf)和files(/etc/hosts)的解析顺序,顺序考前的优先,一般配置顺序是:hosts:     files dns。但是当开启nscd服务之后,不论nsswitch怎么配置,都是nscd缓存优先。nscd缓存的数据库文件位置:/var/db/nscd/hosts

  

# more /etc/nsswitch.conf | grep hosts
# hosts: db files nisplus nis dns
# hosts: dns files db
hosts: dns db files

hosts dns #只使用/etc/resolv.conf查询,不使用/etc/hosts

hosts files #只使用/etc/hosts查询

二、getent命令

从nisswitch库中查找记录:
 getent hosts www.baidu.com

三、DNS 使用的 port number

好了,既然 DNS 系统使用的是网络的查询,那么自然需要有监听的 port 啰!没错!很合理!那么 DNS 使用的是那一个 port 呢?那就是 53 这个 port 啦!你可以到你的 Linux 底下的 /etc/services 这个档案看看!搜寻一下 domain 这个关键词,就可以查到 53 这个 port 啦!

但是这里需要跟大家报告的是,通常 DNS 查询的时候,是以 udp 这个较快速的数据传输协议来查询的, 但是万一没有办法查询到完整的信息时,就会再次的以 tcp 这个协定来重新查询的!所以启动 DNS 的 daemon (就是 named 啦) 时,会同时启动 tcp 及 udp 的 port 53 喔!所以,记得防火墙也要同时放行 tcp, udp port 53 呢!

参考

LINUX DNS解析的3种修改方法~

1.HOST 本地DNS解析

vi /etc/hosts

添加规则 例如:

223.231.234.33 www.baidu.com

2.网卡配置文件DNS服务地址 

vi /etc/sysconfig/network-scripts/ifcfg-eth0

添加规则 例如:

DSN1='114.114.114.114'

3.系统默认DNS配置

vi /etc/resolv.conf

添加规则 例如:

nameserver 114.114.114.114

系统解析的优先级 
1>2>3

/etc/resolv.conf配置里的search含义

search local.xx local.yy

当nslookup www查询失败时,会继续查询www.local.xx,如果仍然失败,继续查询www.local.yy

使用nsswitch控制linux dns解析顺序的更多相关文章

  1. Linux主机解析顺序

    1.介绍 本篇文章由于因公司项目上线,需要对项目环境进行压力测试.在压测过程中,所有打压机从公网对目标项目服务器进行压力测试,发现和内网压力测试的性能结果差距10倍左右,在调整主机对DNS的解析顺序之 ...

  2. LINUX DNS解析的3种修改方法~

    1.HOST 本地DNS解析 vi /etc/hosts 添加规则 例如: 223.231.234.33 www.baidu.com 2.网卡配置文件DNS服务地址  vi /etc/sysconfi ...

  3. 改变Linux的DNS解析顺序(DNS到hosts)

    在Linux中,往往解析一个域名时,先会找/etc/hosts文件,如果/etc/hosts文件没有对应,才会去找DNS,那么有什么方式,让主机先找DNS呢? 当然有,在/etc/nsswitch.c ...

  4. linux下DNS设置以及解析顺序

    1.编辑/etc/resolv.conf文件,添加如下语句: nameserver dns_ip(例如nameserver 8.8.8.8) 2.如/etc/nsswitch.conf中未包含启用DN ...

  5. Linux DNS 服务器安装、配置和维护

    每个 IP 地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开.有了主机名,就不要死记硬背每台 IP 设备的 IP 地址,只要记住相对直观有意义的主机名就行了.这就是 DNS ...

  6. Linux系统解析域名的先后顺序【转帖】

    Linux系统解析域名的先后顺序 gd_WWW已经在本地(/etc/hosts)进行指向,但是竟然还能解析到外网,让我百思不得其解.经过不断查找发现域名解析与以下四个文件有关: /etc/hosts ...

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

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

  8. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

  9. LINUX DNS客户端 解析域名慢的问题。

    Linux系统下域名解析的配置文件是/etc/resolv.conf cat /etc/resolv.conf # Generated by NetworkManager options single ...

随机推荐

  1. git 查看远程分支 $ git branch -a

    查看远程分支 加上-a参数可以查看远程分支,远程分支会用红色表示出来(如果你开了颜色支持的话): 1 2 3 4 5 6 7 8 9 10 $ git branch -a master remote ...

  2. 走进 MvvmLight for Xamarin.Forms

    一.Xamarin.Forms 不使用框架时的绑定 需要注意的是BindingContent,不是DataContent <ContentPage xmlns="http://xama ...

  3. lsof恢复进程打开的文件

    工作原理:进程每打开文件都会生成一个文件句柄FD来标识一个文件,进程打开的文件如果没有被释放,可以通过文件句柄FD来恢复删除的文件 注意:适合恢复进程一直在打开一个文件,例如日志文件,如果配置文件进程 ...

  4. C#读取csv文件使用字符串拼接成XML

    phone.csv zhangsan1, zhangsan2, zhangsan3, static void Main(string[] args) { //XML //XML就是一个文件,用来存储数 ...

  5. 解决Xamarin Android SDK Manager闪退问题

    解决Xamarin Android SDK Manager闪退问题 SDK Manager闪退是因为它找不到java.exe导致的.SDK Manager默认是通过读取注册表中JDK安装信息来java ...

  6. Graph Valid Tree -- LeetCode

    Given n nodes labeled from 0 to n - 1 and a list of undirected edges (each edge is a pair of nodes), ...

  7. 【20181024T3】小C的宿舍【分治】

    题面 [错解] 好像就是\(|i-j|+|a_i - b_i|\)唉 嗯开始都加i-1,跑一遍,1~(i-1)加1,i~n 减1,线段树维护. 过样例了呢 哎大样例怎么多了那么多啊 跑了个暴力,多得更 ...

  8. AtCoder - 1999 Candy Piles

    Problem Statement There are N piles of candies on the table. The piles are numbered 1 through N. At ...

  9. BZOJ 1834 [ZJOI2010]network 网络扩容(费用流)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1834 [题目大意] 给定一张有向图,每条边都有一个容量C和一个扩容费用W. 这里扩容费 ...

  10. 【贪心】hdu6180 Schedule

    题意:给你n个任务的开始时间和结束时间,一个机器同时最多执行一个任务,问你最少要几个机器.保证机器最少的前提下,问你每个机器的开动时间(最后一次关闭-第一次开启)之和最少是多少. 把这些线段画在数轴上 ...