Linux服务配置 DNS服务器配置「建议收藏」

Linux服务配置 DNS服务器配置「建议收藏」一、什么是DNS服务器DNS(DomainNameSystem):域名系统用于IP和域名的解析产生原因:上网需要IP,而IP不好记忆,用英文字母表示的域名便于记忆。二、CentOS7配置DNS服务器过程1.准备服务器、客户端服务器IPDNS服务器IP=192.168.222.110客户端IP=192.168.222.137测试机IP=192.168.222.1002.DNS服务器配置(192.168.222.110)改网卡vi/etc/s

大家好,又见面了,我是你们的朋友全栈君。

一、什么是DNS服务器

DNS(Domain Name System):域名系统
用于IP和域名的解析
产生原因:上网需要IP,而IP不好记忆,用英文字母表示的域名便于记忆。

二、CentOS 7 配置DNS服务器过程

1.准备服务器、客户端

服务器 IP
DNS服务器 IP=192.168.222.110
客户端 IP=192.168.222.137
测试机 IP=192.168.222.100

2.DNS服务器配置(192.168.222.110)

改网卡
vi /etc/sysconfig/network-scripts/ifcfg-ens33
DNS1=192.168.222.110
重启网络
systemctl restart network
本地yum安装bind
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak #禁用网络源
vi CentOS-Media.repo  #修改本地源配置
    baseurl=file:///mnt  #光盘挂载点
    enabled=1   #启用本地源
mount /dev/sr0 /mnt   #挂载光盘到/mnt下
yum -y install bind   #安装bind
建立配置文件
vi /etc/named.conf

修改以下内容:

options:
	listen-on port 53 { 
    192.168.222.110; };   #DNS服务器IP
	allow-query		  { 
    0.0.0.0/0; };

下方添加以下内容:

zone "baidu.com" IN { 
        
	type master;    #声明DNS为主DNS
	file "baidu.com.zone";   #声明要解析的域名:baidu.com,并生成以baidu.com.zone为名的数据文件
};

zone "222.168.192.in-addr.arpa" IN { 
   
	type master;
	file "192.168.222.zone";  #声明要解析的IP网段,并生成以192.168.222.zone为名的数据文件
};

保存,并检查语法错误

named-checkconf
建立区域数据文件(正向解析)
cd /var/named
vi /var/named/baidu.com.zone

编辑这个新文件,添加以下内容

$TTL 510
@		IN	SOA		baidu.com	test.baidu.com. { 
   
		20210324
		4H
		15M
		2W
		2D
}
@		          IN		NS		dns.baidu.com.
www.baidu.com.    IN		A		192.168.222.138
dns.baidu.com.    IN		A		192.168.222.100
#这里设置了两个对应关系:www.baidu.com对应192.168.222.138
					 #dns.baidu.com对应192.168.222.100

保存,检测语法错误

named-checkzone baidu.com ./baidu.com.zone

显示OK,表示没有问题。

建立反向区域数据文件(反向解析)
vi /var/named/192.168.222.zone

编辑这个新文件,添加以下内容

$TTL 510
@		IN	SOA		baidu.com	test.baidu.com. { 
   
		20210324
		4H
		15M
		2W
		2D
}
@		          IN		NS		dns.baidu.com.
138               IN		PTR		www.baidu.com.
100               IN		PTR		dns.baidu.com.
#这里把两个对应关系反向对应,即既能通过域名找到IP,也能通过IP找到域名

保存,检测语法错误

named-checkzone 222.168.192.in-addr.arpa ./192.168.222.zone

显示OK,表示没有问题。

如果以上都没有问题,启动DNS服务

systemctl start named

至此,DNS服务器配置完毕。

3.客户端配置(192.168.222.137)

改网卡
vi /etc/sysconfig/network-scripts/ifcfg-ens33
DNS1=192.168.222.110
域名解析指向DNS服务器
vi /etc/resolv.conf
nameserver 192.168.222.110
重启网络服务
systemctl restart network

4.打开测试机(192.168.222.100)

启动该虚拟机即可。

5.防火墙配置(解决ping未知服务问题)

开启DNS端口:tcp53、udp53、tcp953 客户端和DNS服务器均要配置

vi /etc/sysconfig/iptables

添加以下内容

-A INPUT -p tcp -m state --state NEW -m tcp --dport 53 -j ACCEPT
-A INPUT -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 953 -j ACCEPT

保存退出,并重启防火墙服务

systemctl restart iptables.service

5.防火墙配置(解决ping未知服务问题)

6.测试DNS服务器

在这里插入图片描述
也可以用nslookup测试

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136115.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql之jdbc

    mysql之jdbcJDBCjava数据库连接用来操纵mysql数据库服务器的一套api接口。大部分是接口。javajdbc各种关系数据库mysqloraclesqlserverdb2jdbc操作m

    2022年7月1日
    20
  • tensorflow指定版本的安装及升级到最新版「建议收藏」

    tensorflow指定版本的安装及升级到最新版「建议收藏」安装anaconda,然后用python的pip可以安装特定版本的tensorflow,如:pipinstalltensorflow-gpu==1.4.0升级到最新:GPU版本:pipinstall–upgradetensorflow-gpuCPU版本:pipinstall–upgradetensorflow如何查看当前tensorflow版本:python……

    2022年6月25日
    33
  • 剑指java面试offer直通车_面试后一般多久给offer

    剑指java面试offer直通车_面试后一般多久给offer这是本人整理的数万字的面试笔记,基本上涵盖了Java领域的所有技术栈,本人也是凭借这份面试笔记斩获了近10个offer,面试成功率高达80%。当然这份笔记是我根据自身的经验和技术栈整理的,自己觉得很重要的或者记不清的就会记录记录下来,面试被问到的时候也有回答的思路。现在共享给大家,希望对准备面试的小伙伴有帮助。1.微服务1.1主流注册中心对比zookeeper:zookeeper作为注册中心主要是因为它具有节点变更通知功能。只要客户端监听相关服务节点,服务节点有所变更就能及时的通知到监

    2022年9月16日
    1
  • Zato入门part2

    Zato入门part2

    2022年3月12日
    42
  • 无阻塞情况connect生产EINPROGRESS错[通俗易懂]

    无阻塞情况connect生产EINPROGRESS错[通俗易懂]今天的游戏开发client测试程序,非常多,因为出现client。后connect成功。代码证recv系统调用。后来发现,可能是由于socket默认模式被阻止,这将使很多client接处于链接却不能数据传输状态。后来改动socket为非堵塞模式,但在connect的时候,发现返回值为-1,刚開始以为是connect出现错误,但在server上看到了链接是ESTABLISED…

    2022年7月16日
    13
  • C语言代码的换行_c语言怎么换行输出

    C语言代码的换行_c语言怎么换行输出分两种情况:1.预处理:把一个预处理指示写成多行要用“\”续行,因为根据定义,一条预处理指示只能由一个逻辑代码行组成。2. 正常程序:一行写不下:把C代码写成多行则不必使用续行符,因为

    2022年8月3日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号