[计算机网络/Linux] 基于CENTOS7自建DNS服务

news/2025/3/11 6:08:54/文章来源:https://www.cnblogs.com/johnnyzen/p/18618171

  • 最初的诉求:自建DNS,篡改公开网站的url为自建web服务的url。

  • 在使用浏览器进行网上冲浪的时候,我们只需要输入网址即可访问,但是在网络中,网址并不是一个有效的东西,真正起作用的是网址所对应的IP地址,但是IP地址是一堆没有规律的数字,难以记忆、使用,所以就有了DNS服务器。

  • DNS服务器的功能就是将域名转换成IP地址,这样在我们想要访问一个主机的时候就不需要记住它的IP地址,而是只需要记住它的网址即可,剩下的工作有DNS服务器去替我们完成,由它来将一个网址转换成IP地址,来供给我们访问。

下面就来介绍如何在CentOS7中搭建一个DNS服务器。

  • 版本信息
    • os : centos 7.9

理论:DNS体系

DNS解析流程: 递归查询 vs 迭代查询 | 正向解析 vs 反向解析

  • 域名解析的过程(如下图):
  • 递归查询:

本主机本地域名服务器的查询,一般是采用递归查询

  • 迭代查询:

本地域名服务器根服务器的查询,一般是迭代查询

  • 本地正向解析域名的步骤:(以www.baidu.com为例的一般步骤,实际情况可能有细微变化)
  • 第一步:先去问/etc/hosts文件,有就直接回复;
  • 第二步:再去问本地dns缓存服务器,有就直接回复;
  • 第三步:再去问根域名服务器,根域名服务器(.只能解析x.中的x,也就是说根只能解析出顶级域名.com),知道顶级域后,再去顶级域服务器(顶级域只能解析x.com.中的x为baidu),再去二级域服务器,最终查到权威服务器,就可以查询到主机名为www,最终获得到www.baidu.com的ip地址,获取到最终的域名地址,告诉缓存服务器;(看上面的流程图。类似)
  • 第四步:缓存服务器最后告诉客户端,dns会把解析服务器会缓存结果,递归查询结束;

域名的分类及DNS架构

  • 根域: 全球根服务器节点只有13个,10个在美国,1个荷兰,1个瑞典,1个日本

  • 根域:用“.”表示

  • 顶级域(一级域):一般代表一种类型的组织机构或国家区域,如.net,.com,.edu等

  • 二级域:用来标明顶级域下面的的一个特定组织,国家顶级域下面的二级域名由国家安全部门统一管理,比如:.com.cn,.net.cn,.edu.cn

  • 三级域(子域):由二级域创建的一般为子域,一般是由各个组织自己申请的

  • 主机:如www和mail等表示主机名称

DNS服务器的类型

  • master域名服务器:一般来说主域名服务器会有自己构建的一部分域名对应数据库,另外还有“.”的信息;是主域名服务器的一种,也称为主服务器、主域名服务器,负责维护一个区域的所有域名信息,这些信息一般存储在文本文件中,如zone文件或hosts文件1。Master域名服务器本身含有域名的数据文件(就是zone),这个配置文件就是设置正解或反解的“数据库”,包含各种记录,所以它本身具有提供查询Internet查询所需的数据。

  • slave域名服务器:会获取主服务器的数据库信息,放在/var/named/slaves文件夹中加密,当主服务器down的时候,slave服务器可以继续使用;

  • 缓存域名服务器:只提供域名解析的缓存功能,目的是为了可以更高效的查询,但没有域名数据库,是从远程服务器取得每次域名服务器查询的结果,放在高速缓存中,以后查询相同的信息的时候响应更快;远程域名服务器不是权威性服务器

  • 转发域名服务器:负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。

DNS记录的指令 = 资源记录

  • 区域(zone)解析库:由众多RR组成:
  • 资源记录:Resource Record, RR
  • 记录类型:A, AAAA, PTR, SOA, NS, CNAME, MX
  • SOA:Start Of Authority,起始授权记录;一个区域解析库有且仅能有一个SOA记录,必须位于解析库的第一条记录。
  • A:internet Address,作用: FQDN --> IP。
  • AAAA:FQDN --> IPv6
  • PTR:PoinTeR,IP --> FQDN
  • NS:Name Server,专用于标明当前区域的DNS服务器
  • CNAME : Canonical Name,别名记录
  • MX:Mail eXchanger,邮件交换器
  • TXT:对域名进行标识和说明的一种方式,一般做验证记录时会使用此项,如:SPF(反垃圾邮件)记录,https验证等
# 示例
_dnsauth TXT 2012011200000051qgs69bwoh4h6nht4n1h0lr038x
  • 资源记录定义的格式:

语法:

name [TTL] IN rr_type value
  • 注意事项
    (1) TTL可从全局继承。
    (2) @可用于引用当前区域的名字。
    (3) 同一个名字可以通过多条记录定义多个不同的值;此时DNS服务器会以轮询方式响应。
    (4) 同一个值也可能有多个不同的定义名字;通过多个不同的名字指向同一个值进行定义;此仅表示通过多个不同的名字可以找到同一个主机。

SOA记录

  • name: 当前区域的名字,例如“test.com.”
  • value: 有多部分组成

(1) 当前区域的主DNS服务器的FQDN,也可以使用当前区域的名字;
(2) 当前区域管理员的邮箱地址;但地址中不能使用@符号,一般用.替换

例如:admin.magedu.com
(3) 主从服务区域传输相关定义以及否定的答案的统一的TTL

test.com. 86400 IN SOA ns.test.com. 
nsadmin.test.com. (2015042201 ; 序列号2H ; 刷新时间10M ; 重试时间1W ; 过期时间1D ; 否定答案的TTL值
)

NS记录

  • name: 当前区域的名字
  • value: 当前区域的某DNS服务器的名字,例如ns.test.com.

注意:一个区域可以有多个NS记录

  • 例如:
test.com. IN NS ns1.test.com.
test.com. IN NS ns2.test.com.

注意:
(1) 相邻的两个资源记录的name相同时,后续的可省略
(2) 对NS记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录

MX记录

  • name: 当前区域的名字
  • value: 当前区域的某邮件服务器(smtp服务器)的主机名

一个区域内,MX记录可有多个;但每个记录的value之前应该有一个数字(0-99),表示此服务器的优先级;数字越小优先级越高

  • 例如:
test.com. IN MX 10 mx1.test.com.
IN MX 20 mx2.test.com.

注意:对MX记录而言,任何一个MX记录后面的服务器名字,都应该在后续有一个A记录

A记录 := domainA => IPv4 Addr

  • name: 某主机的FQDN,例如www.test.com.
  • value: 主机名对应主机的IP地址
  • 样例配置
www.test.com. IN A 1.1.1.1
www.test.com. IN A 2.2.2.2
mx1.test.com. IN A3.3.3.3
mx2.test.com. IN A 4.4.4.4# server1 - server100  解析的地址为 1.2.3.1 - 1.2.3.100
$GENERATE 1-254 server$ A 1.2.3.$*.test.com. IN A 5.5.5.5
test.com. IN A 6.6.6.6

避免用户写错名称时给错误答案,可通过泛域名解析进行解析至某特定地址

AAAA记录 := domainA => IPv6 Addr

  • name: FQDN
  • value: IPv6

CNAME := 别名 := domainA => domainB

  • name: 别名的FQDN
  • value: 真正名字的FQDN
  • 例如:
www.test.com. IN CNAME websrv.test.com.xx.xx.com IN CNAME yy.servers.com

即: 域名 xx.xx.com 指向另一目标域名 yy.servers.com

PTR

  • name: IP,有特定格式,把IP地址反过来写,1.2.3.4,要写作4.3.2.1;而有特定后缀:in-addr.arpa.

所以完整写法为:4.3.2.1.in-addr.arpa.

  • value: FQDN

  • 例如:

4.3.2.1.in-addr.arpa. IN PTR www.magedu.com.

如1.2.3为网络地址,可简写成:

4 IN PTR www.magedu.com.

注意:网络地址及后缀可省略;主机地址依然需要反着写

安装步骤

机器列表及hosts

  • 服务器列表及etc/hosts 的大致配置:
192.168.100.102 vmw-b.servers.com cpu架构 = x86_64bit / cpu=1c / memory=2g / disk=20gos = centos7.9
192.168.100.103 vmw-c.servers.com cpu架构 = x86_64bit / cpu=1c / memory=2g / disk=20gos = centos7.9
192.168.100.104 vmw-d.servers.com cpu架构 = x86_64bit / cpu=1c / memory=2g / disk=20gos = centos7.9
192.168.100.105 vmw-e.servers.com cpu架构 = x86_64bit / cpu=1c / memory=2g / disk=20gos = centos7.9
  • 部署目标:在 vmw-b 节点搭建DNS服务器

Step1 自建DNS服务(named)

Step1.1 安装named服务

yum  install -y bind

对应DNS服务: named

DNS:域名解析协议,用来解析域名与ip的对应关系
    主配置文件:    /etc/named.conf
    子配置文件:    /etc/named.rfc1912.zones
    (子配置文件,被主配置文件引用)
        数据目录:     /var/named

DNS的高速缓存
举例如下:主机1向主机2询问百度的ip地址时,主机2不知道,所以通过询问别的主机得到百度的ip地址,然后记录下百度的地址,当主机3再次询问主机2百度地址时,可以直接反馈给主机3,不必再询问别的主机,这就是dns的高速缓存。

Step1.2 配置/etc/named.conf

  • vim /etc/named.conf : 配置named.conf

更新如下配置项:

options {#listen-on port 53 { 127.0.0.1; };listen-on port 53 { any; };#allow-query { localhost; };allow-query { any; };# dnssec-enable yes;dnssec-enable no;#dnssec-validation yes;dnssec-validation no;#dnssec-lookaside yes;dnssec-lookaside no;...
}

【解释】
allow-query { acl|IP|Network; }; | 允许向本服务器发起查询请求的主机,即:白名单
allow-update { acl|IP|Network|none; }; | 因为谁都可以更新区域数据库不安全,所以需要这个来限制谁可以,DDNS(动态DNS,使用DHCP服务器), Dynamic DNS(因为不安全,所以一般禁用这个功能:allow-update { none; }
allow-transfer { acl|IP|Network; }; | 允许哪些从服务器可以从本机进行区域传送;默认是所有主机都可以;建议应该只允许从服务器完成此项工作,即:白名单;

追加自定义的域的配置

zone "my-servers.com" IN {type master;# file "my-servers.com.zone";file "/var/named/my-servers.com.zone";allow-update { none; };
};

Step1.3 创建并编辑自定义的zone配置文件(myservers.com.zone)

cp -p /var/named/named.localhost /var/named/my-servers.com.zonevim /var/named/my-servers.com.zone
编辑的内容:
@       IN SOA  dns.my-servers.com. root.my-servers.com (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumNS      ns.my-servers.com.
ns      IN A    192.168.100.102
www 	IN A    192.168.100.102
dl      IN CNAME vmw-e.servers.com
test    IN CNAME vmw-e.servers.com# 修正权限,防止重启 named 服务时,出问题
chmod +755 /etc/named*# 注: /etc/named.conf , ...
chmod +755 /var/named/
chown -R named:named /etc/named.conf# 注: 原始权限(/etc/named*) = root:named
chown -R named:named /var/named/# 注: 原始权限(/var/named/[data|dynamic|slaves]) = named:named# 注: 原始权限(/var/named/[named.ca|named.empty|named.localhost|named.loopback]) = root:named# 注: chown [-R] 账号名:用户组 文件或目录# 注: -R : 递归地更改指定目录下所有文件和子目录的所有者和所属组递归之意ls -la /etc/named*
ls -la /var/named/# 检验一下配置是否有问题
named-checkconf
named-checkzone my-servers.com /var/named/my-servers.com.zone

Step1.4 重启DNS服务的相关网络服务

rndc reloadsudo systemctl restart  named# 注: 启动命令的本质: /usr/sbin/named -u named -c /etc/named.confsudo systemctl enable named# 设置为开机自启sudo systemctl restart network

Step1.5 为客户端计算机的网卡配置DNS服务器

注:假定客户端服务器也是CENTOS7,且仅启用了network服务,禁用了NetworkManager服务。

vim /etc/sysconfig/network-scripts/ifcfg-ens33...DNS=192.168.100.102DNS1=... //其他备用的DNS服务器DNS2=... //其他备用的DNS服务器...ifconfig ens33 down
ifconfig ens33 up
或 : sudo systemctl restart network# 注: 此举将重置 /etc/resolv.conf 的 dns 配置# 注:此举将重载 /etc/.../ifcfg-ens33 的网卡 配置vim /etc/resolv.confnameserver 192.168.100.102nameserver 114.114.114.114# 注: 此操作一定要在 `systemctl restart network` 之后进行,否则被重置

Step1.6 验证与使用

[root@vmw-b named]# nslookup www.my-servers.com
Server:         192.168.100.102
Address:        192.168.100.102#53Name:   www.my-servers.com
Address: 192.168.100.102[root@vmw-b named]# nslookup test.my-servers.com
Server:         192.168.100.102
Address:        192.168.100.102#53** server can't find test.my-servers.com: NXDOMAIN

Step1.X 查看DNS服务的运行状态及日志

named -gsystemctl status named
journalctl -u namedsystemctl status network
journalctl -u networktail -f /var/log/messages

Step2 DNS 高速缓存服务(nscd) 的安装与使用【可选步骤】

  • NSCD (Name Service Cache Daemon)是一个系统缓存服务,用于缓存常见的名称服务信息,例如用户、组、主机名和服务。它可以提高系统的性能,减少对名称服务的频繁查询和网络流量,从而加快系统的响应速度。

  • NSCD在许多 Linux 发行版中默认安装,可以使用 systemctl status nscd 命令检查其运行状态。如果需要启动、停止或重新启动 NSCD,可以使用 systemctl start nscdsystemctl stop nscdsystemctl restart nscd 命令。

  • 如果你在/etc/Hosts指定某个IP解析域名,发现实际请求过程中并不生效,那么这时候就要考虑系统内是否存在nscd进程。

开启nscd的hosts缓存服务后,先会优先查找nscd缓存表,如果缓存表里没有,/etc/hosts也没有,再正常发起dns query。

  • 值得注意的是,CENTOS 7.9(DVD)版中,没有提前预装nscd服务。

CASE1:安装与启动

  • 如果系统未安装nscd服务,可以通过以下命令安装
sudo yum -y install nscd
  • 安装完成后,启动nscd服务,并设置为开机自启:
sudo systemctl start nscdsudo systemctl enable nscd

CASE2:清理NSCD服务的DNS缓存

  • -i, --invalidate=TABLE 可使指定的缓存失效,后面可以接:

passwd、group、hosts、services、netgroup。

sudo nscd -i hosts

CASE3: 默认配置文件(nscd.conf)

  • 默认配置文件路径: /etc/nscd.conf

Linux网络管理与DNS体系的重要配置文件

  • /etc/host.conf:配置域名服务客户端的控制文件。
  • /etc/hosts:完成主机名映射为IP地址的功能。
  • /etc/resolv.conf:域名服务客户端的配置文件,用于指定域名服务器的位置。
  • /etc/sysconfig/network:包含了主机最基本的网络信息,用于系统启动。
  • /etc/sysconfig/network-script/ifcfg-*:网卡的配置,系统启动时初始化网络的一些信息。
  • /etc/xinetd.conf:定义了由超级进程xinetd启动的网络服务。
  • /etc/networks:完成域名与网络地址的映射。
  • /etc/protocols:设定了主机使用的协议以及各个协议的协议号。
  • /etc/services:设定主机的不同端口的网络服务。

/etc/hosts

默认存放的是本机IP和本机一些主机名的对应关系,第一行是ipv4信息,第二行是ipv6信息,如果用不上ipv6本机解析,一般把该行注释掉。

[root@localhost ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

/etc/nsswitch.conf

  • etc/nsswitch.conf文件是Linux系统中的一个重要配置文件,它定义了系统如何查找各种数据库(如用户、组、密码、主机名等)的方法,以及在查找时应首先使用哪些数据库。

nsswitch.conf是最初SUN公司开发的一种扩充(name services switch)
客户机根据 /etc/nsswitch.conf 文件来确定名字解析的顺序:

  • 首先本地文件,其次NIS+服务器,最后是DNS

  • 案例解释:/etc/nsswitch.conf:hosts配置项
hosts: dns files
表示只在DNS失效时,才使用/etc/hosts文件hosts: dns 
表示只用DNS解析主机host: files 
表示只用/etc/hosts文件解析主机hosts: files dns
将使用/etc/inet/hosts文件解析主机,表示如果无法解析主机名将使用DNS。如果使用了NIS+,那么这行将如下所示:
hosts: dns nisplus nis files# CENTOS 7.9-2009 版本的默认策略:
hosts: files dns myhostname
  • 换言之,/etc/nsswitch.conf文件定义了如下数据库和检索顺序(含DNS的检索与解析顺序):
passwd:用户账号信息
group:用户组信息
shadow:用户密码信息
hosts:主机名、IP地址对应关系
networks:网络名称、IP地址对应关系
protocols:网络协议信息
services:基于网络的服务信息(如NFS)
rpc:RPC协议信息
netgroup:网络组信息passwd:指定了所有计算机用户的账户信息,这些信息被记录在 /etc/passwd 文件中,包括用户 ID、用户名、密码(加密后)、用户家目录、默认 Shell 等信息。
group:指定了所有的用户组信息,被记录在 /etc/group 文件中,包括组 ID、组名、组成员等信息。
shadow:指定了所有用户的密码信息,其加密后的密文被保存在 /etc/shadow 文件中。
hosts:指定了计算机名、域名以及 IP 地址之间的对应关系,这些信息可以被记录在 /etc/hosts 文件中或者通过网络上的 DNS 服务器查询。
networks:指定了网络名称和 IP 地址之间的对应关系,被记录在 /etc/networks 文件中。
protocols:指定了网络协议的信息,被记录在 /etc/protocols 文件中。
services:指定了网络服务相关信息,如端口号、服务名称等,被记录在 /etc/services 文件中。
rpc:指定了 RPC 协议的信息,被记录在 /etc/rpc 文件中。
netgroup:指定了网络组信息,被记录在 /etc/netgroup 文件中,用于定义一组主机或用户的集合,以及这些主机和用户之间的关系。

/etc/resolv.conf

  • 样例配置
search xx.yy.zz.kk
nameserver 114.114.114.114
nameserver 8.8.8.8

Q: CENTOS中,resolv.conf的作用?

  • 在CentOS系统中,/etc/resolv.conf文件是一个DNS客户机的配置文件,它用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序。这个文件指定了系统用于域名解析的DNS服务器地址,以及当访问非完全限定域名时,系统会自动添加哪些后缀进行尝试解析。
  1. DNS解析/etc/resolv.conf文件包含了系统用于将域名转换为IP地址的DNS服务器的地址。当系统需要解析一个域名时,它会查询这个文件中列出的DNS服务器。

  2. 域名搜索顺序:除了DNS服务器地址,/etc/resolv.conf还可以包含搜索域(search)和域名(domain),这些定义了系统在解析不完全限定域名时应该附加哪些后缀。

  3. 轮询DNS服务器:如果有多个DNS服务器被列出,系统会按照文件中列出的顺序轮询这些服务器,直到域名被成功解析。

  4. 缓存:虽然/etc/resolv.conf不直接缓存DNS查询结果,但它是系统进行DNS查询的基础配置文件。

Q:resolv.confnetwork服务的关系?

  • 在CentOS 7及以前的版本中,network服务(通过/etc/sysconfig/network-scripts/目录下的配置文件管理)直接管理网络接口,包括DNS设置。当network服务【启动】或【重启】时,它会读取 /etc/resolv.conf 文件,并根据网络接口配置文件中的设置(如/etc/sysconfig/network-scripts/ifcfg-*)来更新DNS服务器信息。
  1. 动态更新:如果network服务配置了动态DNS解析,它会在网络接口状态变化时(如接口启用或禁用)更新/etc/resolv.conf文件。

  2. 静态配置:如果管理员手动编辑了/etc/resolv.conf文件以设置静态DNS服务器,network服务在启动时会覆盖这些设置,除非配置文件中明确指示不从DHCP自动获取DNS服务器信息。

  3. 冲突:如果NetworkManagernetwork服务同时运行,它们可能会争夺对/etc/resolv.conf文件的控制权,导致DNS设置冲突。通常建议在CentOS 7及更新版本中使用NetworkManager,因为它提供了更灵活的网络管理功能。(笔者的实际做法:禁用了NetworkManager

  4. 禁用network服务的DNS管理:为了避免network服务覆盖/etc/resolv.conf文件,可以配置网络接口不从DHCP自动获取DNS服务器信息,或者完全禁用network服务,仅使用NetworkManager管理网络。

以网卡ens33为例,展示如何配置禁用自动获取dns服务器:

  • vim /etc/sysconfig/network-scripts/ifcfg-ens33
...
PEERDNS=no
...

即使网络接口通过DHCP获取IP地址,也不会自动更新/etc/resolv.conf文件中的DNS服务器信息。

总结来说,/etc/resolv.conf是CentOS系统中DNS解析的关键配置文件,而network服务在管理网络接口时会更新这个文件。为了避免配置冲突,通常建议在现代CentOS版本中使用NetworkManager,并适当配置以保持DNS设置的一致性。

Q: resolv.conf与NetworkManager的关系?

  • /etc/resolv.confNetworkManager的关系在于,当NetworkManager服务在系统中运行时,它会动态修改/etc/resolv.conf文件。NetworkManager负责管理网络连接,并在每次服务重启时重写/etc/resolv.conf,以反映当前活动连接提供的DNS服务器信息。

这意味着,如果你手动编辑了/etc/resolv.conf文件,但NetworkManager服务正在运行,那么NetworkManager可能会覆盖你的更改,因为它会根据DHCP客户端获取的DNS信息更新nameserversearch字段。

  • 为了防止NetworkManager覆盖/etc/resolv.conf文件,可以将其配置为不管理DNS设置。这可以通过在/etc/NetworkManager/NetworkManager.conf文件中设置dns=none来实现,这样NetworkManager就不会修改/etc/resolv.conf文件了。配置示例如下:
[main]
#plugins=ifcfg-rh,ibft
dns=none

通过这种方式,你可以保持对/etc/resolv.conf文件的控制,确保DNS设置按照你的配置持久化,即使在系统重启后也不会被NetworkManager覆盖。

Q: 参数及其意义?

nameserver:指定DNS服务器的IP地址。
domain:定义本地域名信息。
search:定义域名的搜索列表。
sortlist:对gethostbyname返回的地址进行排序

DNS体系中的重要站点

  • 常用的、公共的 DNS Server
114.114.114.114
8.8.8.8
8.8.4.4
  • 根域名服务器
root-server.net
https://www.isc.org/support

Y 推荐文献

  • 【Linux网络】本地DNS服务器搭建 - CSDN

dns 理论 / bind / named 服务

  • DNS服务器搭建,centos7使用bind搭建DNS服务器,DNS超详细详解 - CSDN

bind / named服务

  • Linux缓存服务NSCD用法总结及实践 - Name Service Cache Daemon-腾讯云开发者社区-腾讯云

nscd 服务

X 参考文献

  • Centos7 从0开始搭建DNS服务器 - CSDN 【推荐】

  • dns配置大全,你值得拥有! - CSDN

  • [[Solved] Bind doesn't work anymore | Named is Bind]([Solved] Bind doesn't work anymore | Named is Bind | DirectAdmin Forums)

  • bind9配置查错笔记--zone域文件权限permission denied_bind9 zone not loaded - CSDN博客

  • 【报错】【CentOS_7】【BIND】解决named[7151]: loading from master file XXX.XXX.XXX failed: permission - CSDN博客 【推荐】

  • DNS服务器和主从DNS服务器的搭建 - 阿里云开发者社区 【推荐】x3

  • CentOS6.7搭建部署DNS服务 (详解主配置文件) - え稚始گ - 博客园 【推荐】x5

  • 如何在CentOS上配置和管理域名?-HCRM博客 【推荐】x5

  • 設定 /etc/named.conf檔案

  • 任务4 DNS服务配置与管理_实训2:配置和管理dns服务器 在ip地址为192.168.100.252的服务器上配置主域名服务-CSDN博客 【推荐】x5

  • Centos7添加DNS设置的两种方法-百度经验

[main] plugins=ifcfg-rh dns=none
/etc/NetworkManager/NetworkManager.conf

  • 【网络服务器管理】|hosts、resolve.conf、nsswitch.conf - CSDN 【推荐】x5
  • Linux杂谈之nsswitch.conf配置文件 - CSDN

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/855672.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[计算机网络] 基于CENTOS7自建DNS服务

序最初的诉求:自建DNS,篡改公开网站的url为自建web服务的url。在使用浏览器进行网上冲浪的时候,我们只需要输入网址即可访问,但是在网络中,网址并不是一个有效的东西,真正起作用的是网址所对应的IP地址,但是IP地址是一堆没有规律的数字,难以记忆、使用,所以就有了DNS服…

systemd[1]: home.mount: Directory /home to mount over is not empty, mounting anyway.

日志显示这些内容说明可能是 fstab 服务自动挂载之前 /home 不为空systemd[1]: home.mount: Directory /home to mount over is not empty, mounting anyway. ░░ Subject: 挂载点不为空 ░░ Defined-By: systemd ░░ Support: http://www.ubuntu.com/support ░░ ░░ 目…

Linux服务器上部署Redis流程

前言 Redis版本7.0.4 服务器版本:Linux CentOS 8.0 64位 1.下载Redis 进入官网找到下载地址 https://redis.io/download 进入到Xshell控制台(默认当前是root根目录),输入wget 将上面复制的下载链接粘贴上,如下命令: wget http://download.redis.io/releases/redis-7.0.4.tar…

[Tools] Buzz – 免费开源的AI语音转文字工具

Buzz 介绍 https://github.com/chidiwilliams/buzz Buzz是一款基于OpenAI Whisper模型构建的离线语音转文字工具,适用于Windows、macOS和Linux系统。Buzz能将麦克风输入或音频、视频文件实时转换为文字,支持多种格式导入导出,如TXT、SRT和VTT。Buzz的转换速度快,准确率高,…

Skipping题解(贪心,队列,迪杰斯特拉,思维)

原题链接 https://codeforces.com/problemset/problem/2023/B 大致题意 类似一个游戏游戏规则如下:从1开始,可以选择吃掉ai,之后只能选择比当前下标小的(明显,如果开始就选择吃掉a1,那么游戏就结束了)。 当然还可以选择不吃ai,那么可以跳到[1,b[i]](b[i]与i的大小关系…

arcpy开发初探

是第一次将软件操作和书写代码合二为一 一、配置环境 arcpy是无法pip下载到的,只有满足以下条件才能调用到: 1、运行代码时候需要使用arcgis下面的python做编译器去运行 2、arcmap是需要启动着的 先写个测试代码 import arcpy print(arcpy.GetInstallInfo()[Version]) input_…

2024-2025-1 20241322 《计算机基础与程序设计》第13周学习总结

2024-2025-1 20241322 《计算机基础与程序设计》第13周学习总结 作业信息这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK13这个作业的目标 《C语言程序设计》第12章并完…

全斗焕小曲 All In One

全斗焕小曲 All In One 挨棍的小曲 / 无限制格斗大赛の小曲 / 全斗焕の小曲 / 跑男の小曲 / 联赛开幕曲全斗焕小曲 All In One挨棍的小曲 / 无限制格斗大赛の小曲 / 全斗焕の小曲 / 跑男の小曲 / 联赛开幕曲demos https://search.bilibili.com/all?keyword=挨棍的小曲 https:/…

【项目学习】Morpho 借贷协议简单调研

项目背景 Morpho blue (下称 Morpho)是一个超额抵押借贷协议。与传统的借贷协议不同,Morpho 无需经过治理批准即可创建任意定制化的借贷市场。用户可以通过指定一项贷款资产、一项抵押资产、清算贷款价值 (LLTV)、预言机和利率模型 (IRM) 等参数来创建一个独立市场。市场创建…

01.大模型起源与发展

知识点注意力机制(Attention)的主要用途是什么?选择重要的信息并忽略不相关的信息Transformer 模型是基于什么理论构建的?C. 注意力机制(Attention)GPT 和 BERT 的主要区别是什么?C. GPT 使用了单向自注意力,而 BERT 使用了双向自注意力在注意力机制中,“Q”、“K”和…

IoTClient---基于C#开源的物联网设备通讯协议客户端

https://github.com/zhaopeiym/IoTClientIoTClient是一个物联网设备通讯协议实现客户端,将包括主流PLC通信读取、ModBus协议、Bacnet协议等常用工业通讯协议。本组件基于.NET Standard 2.0,可用于.Net的跨平台开发,如Windows、Linux甚至可运行于树莓派上。技术架构1. 编码语…

docker基础篇:安装tomcat

docker基础篇:安装tomcat@目录8.Docker常规安装简介8.1 docker常规安装总体步骤8.2安装tomcat本人其他相关文章链接 8.Docker常规安装简介注意点1: 左面是原始的微服务架构,你要自己linux中搭建mysql、redis繁琐费事,右面是使用docker搭建的服务,直接docker run xx启动即可…