前言:
当前同学们对“centos7dnsmasq”大致比较讲究,大家都需要剖析一些“centos7dnsmasq”的相关内容。那么小编也在网摘上汇集了一些有关“centos7dnsmasq””的相关文章,希望大家能喜欢,你们快快来了解一下吧!温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
1.文档编写目的
上次我们介绍了如何在Windows Server中构建DNS服务器:
如何在Windows Server2008搭建DNS服务并配置泛域名解析
。
不少朋友表示非常有用,但是觉得比较繁琐,在问是否还有更简单的办法。答案显然是,Yes。
那么今天我们来介绍一个更简单的办法,通过Dnsmasq来搭建DNS服务器并实现泛域名解析。讲真,这款软件搭建域名解析,是我见过的最简单的方案,已经被我成功使用到许多PoC等测试环境的中,在不超过100台服务器的集群规模情况下, Dnsmasq还是能比较好支持,服务器的性能还是有不错的表现。
当然,Dnsmasq最大的问题也是在于此,当集群的规模超过100台,还是强烈建议大家用专业的DNS服务器软件来进行域名解析。
内容概述
1.Dnsmasq简介
2.Dnsmasq安装
3.Dnsmasq配置
4.客户端测试
5.常见问题
测试环境
1.RedHat7.2
2.采用sudo权限的ec2-user用户
2.Dnsmasq简介
Dnsmasq是一款小巧且方便地用于配置DNS服务器和DHCP服务器的工具,适用于小型网络,它提供了DNS解析功能和可选择的DHCP功能。Dnsmasq官网如下:
主要适用Dnsmasq可以解决小范围的DNS查询问题,如用于NAT的家庭网络,用modem,cable modem,ADSL设备连接到因特网,对于那些需求低资源消耗且配置方便简单的小型网络(最多可支持1000台主机)是一个很好的选择。如果业务是跨机房、跨地区的话不建议使用Dnsmasq做为DNS解析服务器。
支持系统
目前支持该软件的系统包括:Linux (with glibc and uclibc), *BSD, Solaris 和 Mac OS X。
目前支持Dnsmasq的Linux平台包括:Gentoo, Debian, Slackware, Suse, Fedora, Smoothwall, IP-Cop,floppyfw, Firebox, LEAF, Freesco, fli4l, CoyoteLinux, Endian Firewall 和 Clarkconnect。也支持FreeBSD, OpenBSD 和 NetBSD 。也使用在思科的Linksys 无线路由器(dd-wrt, openwrtand the stock firmware)中还有m0n0wall 项目。
3.Dnsmasq安装
Dnsmasq既可以源码安装,同时在主流的Linux系统的repo中已经加入了Dnsmasq,因此也可以直接通过yum和apt-get方式进行安装,下面对此分别介绍下。
源码安装
以CentOS为例,安装步骤如下:
从Dnsmasq官网下载(),如下:
1.下载Dnsmasq-2.78.tar.gz
[ec2-user@ip-172-31-26-102 ~]$ wget
2.解压Dnsmasq-2.78.tar.gz到/usr/local目录
[ec2-user@ip-172-31-26-102 ~]$ sudo tar -zxvf Dnsmasq-2.78.tar.gz -C /usr/local/
3.进入/usr/local/Dnsmasq-2.78目录执行如下命令
[ec2-user@ip-172-31-26-102 Dnsmasq-2.78]$ pwd/usr/local/Dnsmasq-2.78[ec2-user@ip-172-31-26-102 Dnsmasq-2.78]$ sudo make install
4.安装完毕后,查看下Dnsmasq的版本来验证安装结果。如下:
[ec2-user@ip-172-31-26-102 Dnsmasq-2.78]$ Dnsmasq -vyum和apt-get方式安装
1.yum方式安装,如下:
[ec2-user@ip-172-31-21-45 ~]$ sudo yum -y install Dnsmasq
验证是否安装成功
[ec2-user@ip-172-31-21-45 ~]$ Dnsmasq -v
2.apt-get方式安装,如下:
sudo apt-get -y install DnsmasqDnsmasq -v
4.Dnsmasq配置
Dnsmasq安装完毕后,现在我们来配置Dnsmasq。
Dnsmasq配置选项比较多,但在实际使用中,我们实际需进行配置的选项并不多。下面介绍下,平时最常使用的配置方法。
1.打开配置文件
[ec2-user@ip-172-31-26-102 ~]$ sudo vim /etc/Dnsmasq.conf
2.在配置文件末尾添加如下配置
resolv-file=/etc/resolv.Dnsmasq.confstrict-orderlisten-address=172.31.26.102addn-hosts=/etc/hostsaddress=/cdsw-demo.cloudera.com/172.31.26.80address=/cdsw-demo/172.31.26.80
配置说明:
resolve-file:定义Dnsmasq从哪里获取上游DNS服务器的地址,默认是从/etc/resolv.conf获取。在此我们定义的是从/etc/resolv.Dnsmasq.conf文件中获得。
strict-order:表示严格按照resolv-file文件中的顺序从上到下进行DNS解析,直到第一个解析成功为止。
listen-address:定义Dnsmasq监听的地址,默认是监控DNS本机的所有网卡上。如果想让局域网内的其他机器使用Dnsmasq解析域名的话,需要添加本机的IP地址。
address:自定义域名解析的IP地址,在此以cdsw-demo.cloudera.com这个域名为例。注意Dnsmasq是支持泛域名解析的,以上配置就是一个典型的泛域名解析实例。
address:也可以过滤某些网站,比如如果不想让客户端解析youk.com这个域名的话,我们这个把该域名解析到一台不存在的服务器上或者解析到127.0.0.1这个地址。如:address=/ cdsw-demo.cloudera.com/127.0.0.1
3.配置/etc/hosts文件
在安装Dnsmasq的服务器上(不需要在每一台客户端服务器上修改hosts文件),修改/etc/hosts文件,使得其包含集群所有的FQDN,如下图所示:
4.重启Dnsmasq
以上配置完毕后,需要重启Dnsmasq服务,重启完毕后局域网中的其他机器,就可以通过该DNS服务器解析公网的域名。
5.客户端测试
现在我们切换到客户端,修改客户端的DNS配置文件。
1.在centos6中进行解析的方法如下:
修改/etc/resolv.conf文件配置,在nameserver中增加创建的DNS服务器IP地址
测试:
[ec2-user@ip-172-31-26-80 ~]$ nslookup 172.31.26.102[ec2-user@ip-172-31-26-80 ~]$ nslookup ip-172-31-26-102.ap-southeast-1.compute.internal
泛域名解析
[ec2-user@ip-172-31-26-80 ~]$ nslookup 172.31.26.80[ec2-user@ip-172-31-26-80 ~]$ nslookup cdsw-demo.cloudera.com[ec2-user@ip-172-31-26-80 ~]$ nslookup xxx.cdsw-demo.cloudera.com
2.在centos7中进行解析的方法如下:
修改 /etc/sysconfig/network-scripts/ifcfg-eth0 ,加入:DNS1=172.31.26.102#本地DNS服务器IP地址
然后重启网络
[ec2-user@ip-172-31-26-80 ~]$ sudo systemctl restart network
查看/etc/resolv.conf,看DNS配置是否已经自动加入。
重复上述测试,确认DNS的正反向解析及泛域名解析正常工作。
6.常见问题
1.在源码安装时安装报错
解决方法:
[ec2-user@ip-172-31-26-102 ~]$ sudo yum -y install gcc
醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩的花!
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
您可能还想看
安装
CENTOS6.5安装CDH5.12.1(一)
CENTOS6.5安装CDH5.12.1(二)
CENTOS7.2安装CDH5.10和Kudu1.2(一)
CENTOS7.2安装CDH5.10和Kudu1.2(二)
如何在CDH中安装Kudu&Spark2&Kafka
如何升级Cloudera Manager和CDH
如何卸载CDH(附一键卸载github源码)
如何迁移Cloudera Manager节点
如何在Windows Server2008搭建DNS服务并配置泛域名解析
安全
如何在CDH集群启用Kerberos
如何在Hue中使用Sentry
如何在CDH启用Kerberos的情况下安装及使用Sentry(一)
如何在CDH启用Kerberos的情况下安装及使用Sentry(二)
如何在CDH未启用认证的情况下安装及使用Sentry
如何使用Sentry管理Hive外部表权限
如何使用Sentry管理Hive外部表(补充)
如何在Kerberos与非Kerberos的CDH集群BDR不可用时复制数据
Windows Kerberos客户端配置并访问CDH
数据科学
如何在CDSW中使用R绘制直方图
如何使用Python Impyla客户端连接Hive和Impala
如何在CDH集群安装Anaconda&搭建Python私有源
什么是数据科学工作台?为什么数据科学家需要它?
其他
CDH网络要求(Lenovo参考架构)
大数据售前的中年危机
如何实现CDH元数据库MySQL的主备
如何在CDH中使用HPLSQL实现存储过程
如何在Hive&Impala中使用UDF
Hive多分隔符支持示例
推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。
原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操