centos6 名字服务dnsmasq配置

1 主机名配置

主机hd1配置(后面配置为名字服务器)


[[email protected] Desktop]$ cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=hd1.asn.cn #主机名为hd1.asn.cn (asn.cn为搜索域)

?

[[email protected] Desktop]$ cat /etc/hosts

127.0.0.1 ????hd1.asn.cn????hd1???? localhost???? localhost.localdomain #在本机中,把名字hd1.asn.cn, hd1, localhost和localhost.localdomain都映射到127.0.0.1

?

客户机hd2配置:


[[email protected] Desktop]$ cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=hd2.asn.cn

?

[[email protected] Desktop]$ cat /etc/hosts

127.0.0.1???? hd2.asn.cn????hd2???? localhost localhost.localdomain

?

客户机hd3配置:


[[email protected] Desktop]$ hostname

hd3.asn.cn

[[email protected] Desktop]$ cat /etc/hosts

127.0.0.1????hd3.asn.cn????hd3????localhost localhost.localdomain

?

?

2 名字服务配置

dnsmasq

[[email protected] Desktop]$ sudo find / -name *dnsmasq*

/var/lock/subsys/dnsmasq

/var/run/dnsmasq.pid #进程PID文件

/var/lib/dnsmasq

/etc/dnsmasq.d ##放入该目录的文件将作为配置文件自动加载

/etc/dnsmasq ##自己创建的目录,用于存放上游名字服务列表文件resolv.conf和主机名到IP的映射文件hosts

/etc/dbus-1/system.d/dnsmasq.conf

/etc/selinux/targeted/modules/active/modules/dnsmasq.pp

/etc/dnsmasq.conf ##dnsmasq的主配置文件

?

/etc/rc.d/rc0.d/K50dnsmasq ##指向脚本文件/etc/rc.d/init.d/dmsmasq的软连接

/etc/rc.d/rc1.d/K50dnsmasq

/etc/rc.d/rc2.d/K50dnsmasq

/etc/rc.d/rc3.d/K50dnsmasq

/etc/rc.d/rc4.d/K50dnsmasq

/etc/rc.d/rc5.d/K50dnsmasq

/etc/rc.d/rc6.d/K50dnsmasq

?

?

/etc/rc.d/init.d/dnsmasq ##dnsmasq的启停控制Shell脚本文件{start|stop|restart|reload|condrestart|status}

/usr/sbin/dnsmasq ##dnsmasq服务程序二进制文件

?

?

[[email protected] ~]$ ll /etc/rc.d/rc5.d/K50dnsmasq

lrwxrwxrwx. 1 root root 17 Jul 18 21:11 /etc/rc.d/rc5.d/K50dnsmasq -> ../init.d/dnsmasq ##指向脚本文件/etc/rc.d/init.d/dmsmasq

?

启动脚本文件/etc/rc.d/init.d/dnsmasq


#!/bin/sh

#

# Startup script for the DNS caching server

#

# chkconfig: - 49 50

# description: This script starts your DNS caching server 该脚本启动你的DNS缓存服务

# processname: dnsmasq

# pidfile: /var/run/dnsmasq.pid

?

# Source function library.

.
/etc/rc.d/init.d/functions

?

# Source networking configuration.

.
/etc/sysconfig/network

?

# Check that networking is up.

[
${NETWORKING}
=
"no"
]
&&
exit
0

?

dnsmasq=/usr/sbin/dnsmasq #定义dnsmasq变量

[
-f
$dnsmasq
]
||
exit
0

?

DOMAIN_SUFFIX=`dnsdomainname`

if
[
!
-z
"${DOMAIN_SUFFIX}"
];
then

OPTIONS="-s $DOMAIN_SUFFIX" #定义OPTIONS变量

fi

?

RETVAL=0 #定义RETVAL变量

?

PIDFILE="/var/run/dnsmasq.pid" #定义PIDFILE变量

?

# See how we were called.

case
"$1"
in #$0为程序名,$1代表第一参数

#如果输入参数是start

start)

if
[
$UID
-ne 0
]
;
then

echo
"User has insufficient privilege."

exit
4

fi

echo -n "Starting dnsmasq: "

daemon $dnsmasq
$OPTIONS

RETVAL=$?

echo

[
$RETVAL
-eq 0
]
&&
touch
/var/lock/subsys/dnsmasq

;;

#如果输入参数是stop

stop)

if
test
"x`pidfileofproc dnsmasq`"
!= x;
then

echo -n "Shutting down dnsmasq: "

killproc dnsmasq

fi

RETVAL=$?

echo

[
$RETVAL
-eq 0
]
&&
rm -f /var/lock/subsys/dnsmasq $PIDFILE

;;

?

status)

status -p $PIDFILE dnsmasq

RETVAL=$?

;;

?

reload)

if
test
"x`pidfileofproc dnsmasq`"
!= x;
then

echo -n "Reloading dnsmasq: "

killproc dnsmasq -HUP

fi

RETVAL=$?

echo

;;

?

?

force-reload)

# new configuration takes effect only after restart

$0 stop

$0 start

RETVAL=$?

;;

?

?

restart)

$0 stop

$0 start

RETVAL=$?

;;

?

?

condrestart)

if
test
"x`pidfileofproc dnsmasq`"
!= x;
then

$0 stop

$0 start

RETVAL=$?

fi

;;

?

?

*)

echo
"Usage: $0 {start|stop|restart|reload|condrestart|status}"

exit
2

?

esac #

?

exit
$RETVAL

?

?

?

/etc

├── dnsmasq

│?? ?? ├── hosts

│?? ?? ├── resolv.conf

├── dnsmasq.conf

├── dnsmasq.d

?

?

配置

/etc/dnsmasq.conf


[[email protected] ~]$ cat /etc/dnsmasq.conf

# Change this line if you want dns to get its upstream servers from somewhere other that /etc/resolv.conf

# 如果你想让dns从某个地方(而不是/etc/resolv.conf)获得上游服务

resolv-file=/etc/dnsmasq/resolv.conf ##从/etc/dnsmasq/resolv.conf文件中获得上游DNS服务的IP地址

?

# By default, dnsmasq will send queries to any of the upstream servers it knows about

# 默认dnsmasq会把查询请求发送到它知道的任意一个上游DNS服务器

# and tries to favour servers to are known to be up.

# Uncommenting this forces dnsmasq to try each query with each server strictly in the order they appear in /etc/resolv.conf

# 解注该行,强制dnsmasq严格以/etc/resolv.conf文件中每个服务的出现顺序尝试查询

strict-order

?

# Or which to listen on by address (remember to include 127.0.0.1 if you use this.)

listen-address=192.168.145.151,127.0.0.1

?

?

# For debugging purposes, log each DNS query as it passes through dnsmasq.

log-queries

?

?

# If you don‘t want dnsmasq to read /etc/hosts, uncomment the following line.

no-hosts

?

# or if you want it to read another file, as well as /etc/hosts, use this.

addn-hosts=/etc/dnsmasq/hosts

?

/etc/dnsmasq/resolv.conf 配置上游名字服务的IP地址


[[email protected] ~]$ cat /etc/dnsmasq/resolv.conf

nameserver????192.168.145.2

nameserver????8.8.8.8

nameserver????8.8.4.4

?

/etc/dnsmasq/hosts 自定义的域名(主机名,名字)到IP映射


[[email protected] ~]$ cat /etc/dnsmasq/hosts

192.168.145.151????????hd1.asn.cn????hd1

192.168.145.152????????hd2.asn.cn????hd2

192.168.145.153????????hd3.asn.cn????hd3

?

查看/etc/resolv.conf

[[email protected] ~]$ cat /etc/resolv.conf

# Generated by NetworkManager

search asn.cn

nameserver 127.0.0.1 ##遇到不认识的名字,首先本地解释,然后再找上游服务器

?

重启

[[email protected] ~]$ sudo service dnsmasq restart

Shutting down dnsmasq: [ OK ]

Starting dnsmasq: [ OK ]

?

设置开机自启

[[email protected] ~]$ sudo chkconfig --list dnsmasq

dnsmasq ????0:off????1:off????2:off????3:off????4:off????5:off????6:off

[[email protected] ~]$ sudo chkconfig dnsmasq on

[[email protected] ~]$ sudo chkconfig --list dnsmasq

dnsmasq ????0:off????1:off????2:on????3:on????4:on????5:on????6:off

?

?

本机测试

[[email protected] ~]$ dig archive.cloudera.com

?

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.2 <<>> archive.cloudera.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56484

;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 4

?

;; QUESTION SECTION:

;archive.cloudera.com.????????IN????A

?

;; ANSWER SECTION:

archive.cloudera.com.????5????IN????CNAME????j.global-ssl.fastly.net.

j.global-ssl.fastly.net. 5????IN????A????199.27.79.68

?

;; AUTHORITY SECTION:

fastly.net.????????5????IN????NS????ns3.p04.dynect.net.

fastly.net.????????5????IN????NS????ns4.p04.dynect.net.

fastly.net.????????5????IN????NS????ns1.p04.dynect.net.

fastly.net.????????5????IN????NS????ns2.p04.dynect.net.

?

;; ADDITIONAL SECTION:

ns1.p04.dynect.net.????5????IN????A????208.78.70.4

ns2.p04.dynect.net.????5????IN????A????204.13.250.4

ns3.p04.dynect.net.????5????IN????A????208.78.71.4

ns4.p04.dynect.net.????5????IN????A????204.13.251.4

?

;; Query time: 337 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Sun Aug 9 22:24:29 2015

;; MSG SIZE rcvd: 238

?

?

?

[[email protected] ~]$ dig archive.cloudera.com

?

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.2 <<>> archive.cloudera.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24829

;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 4

?

;; QUESTION SECTION:

;archive.cloudera.com.????????IN????A

?

;; ANSWER SECTION:

archive.cloudera.com.????5????IN????CNAME????j.global-ssl.fastly.net.

j.global-ssl.fastly.net. 5????IN????A????199.27.79.68

?

;; AUTHORITY SECTION:

fastly.net.????????5????IN????NS????ns4.p04.dynect.net.

fastly.net.????????5????IN????NS????ns1.p04.dynect.net.

fastly.net.????????5????IN????NS????ns2.p04.dynect.net.

fastly.net.????????5????IN????NS????ns3.p04.dynect.net.

?

;; ADDITIONAL SECTION:

ns1.p04.dynect.net.????5????IN????A????208.78.70.4

ns2.p04.dynect.net.????5????IN????A????204.13.250.4

ns3.p04.dynect.net.????5????IN????A????208.78.71.4

ns4.p04.dynect.net.????5????IN????A????204.13.251.4

?

;; Query time: 5 msec

;; SERVER: 127.0.0.1#53(127.0.0.1) ##从本地获得解释

;; WHEN: Sun Aug 9 22:24:38 2015

;; MSG SIZE rcvd: 238

?

?

客户机hd2配置、使用

?

[[email protected] Desktop]$ dig archive.cloudera.com

?

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.2 <<>> archive.cloudera.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43528

;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 4

?

;; QUESTION SECTION:

;archive.cloudera.com.????????IN????A

?

;; ANSWER SECTION:

archive.cloudera.com.????5????IN????CNAME????j.global-ssl.fastly.net.

j.global-ssl.fastly.net. 5????IN????A????23.235.47.68

?

;; AUTHORITY SECTION:

fastly.net.????????5????IN????NS????ns4.p04.dynect.net.

fastly.net.????????5????IN????NS????ns3.p04.dynect.net.

fastly.net.????????5????IN????NS????ns2.p04.dynect.net.

fastly.net.????????5????IN????NS????ns1.p04.dynect.net.

?

;; ADDITIONAL SECTION:

ns1.p04.dynect.net.????5????IN????A????208.78.70.4

ns2.p04.dynect.net.????5????IN????A????204.13.250.4

ns3.p04.dynect.net.????5????IN????A????208.78.71.4

ns4.p04.dynect.net.????5????IN????A????204.13.251.4

?

;; Query time: 192 msec

;; SERVER: 192.168.145.151#53(192.168.145.151) ##从配置的主机hd1获得解释

;; WHEN: Sun Aug 9 22:30:14 2015

;; MSG SIZE rcvd: 238

时间: 2024-08-09 00:29:47

centos6 名字服务dnsmasq配置的相关文章

centos6.5安装和配置cobbler

Cobbler介绍 Cobbler 是一个系统启动服务(boot server),可以通过网络启动(PXE)的方式用来快速安装.重装物理服务器和虚拟机,支持安装不同的 Linux 发行版和 Windows.该工具使用python开发,小巧轻便(才15k行代码),使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理 DHCP,DNS,以及yum包镜像. Cobbler 使用命令行方式管理,也提供了基于 Web 的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发

在CentOS6.4中安装配置LAMP环境的详细步骤

原文:在CentOS6.4中安装配置LAMP环境的详细步骤 本文详细介绍了CentOS6.4系统中安装LAMP服务并对其进行配置的过程,即安装Apache+PHP+Mysql,参照了网上大神的设置,其他Linux发行系统可以参考~ 在本文中部分命令操作需要root权限,输入‘su -’命令后输入密码即可切换root身份. 一.修改设置对安装做准备 1. 防火墙设置 设置/etc/sysconfig/iptables文件允许80端口和3306端口.因为80端口是http协议所使用的端口,如果防火墙

httpd服务的配置

httpd2.2安装 yum安装 # yum install httpd-2.2.15-26.el6.centos.x86_64 配置文档:编辑之前复制一份 vim /etc/httpd/conf/httpd.conf 1.ServerRoot "/etc/httpd"   服务器运行目录 配置文件.错误文档.日志的保持目录 2.端口 Listen [IP] PORT Listen 80 Listen 8080 这样,http://192.168.1.31:8080 就可以访问主页面了

Rsyslog日志服务安装配置

rsyslog服务端配置  centos6.4 x64系统  系统自带rsyslog 5.8版本 rsyslog 是一个 syslogd 的多线程增强版. 现在Fedora和Ubuntu, rhel6默认的日志系统都是rsyslog了 rsyslog负责写入日志, logrotate负责备份和删除旧日志, 以及更新日志文件 ################################### #首先部署好lamp环境,详情见lamp安装文档 #更新系统时间   rsyslog-mysql是rs

CentOS6 NFS的安装配置

CentOS6 NFS的安装配置 centos 5 :yum install nfs-utils portmapcentos 6 :yum install nfs-utils rpcbind本节是使用centos 6的配置过程:设备:两台 centos6 OS 安装的时候选择的是"BasicServer"软件配置包.首先,让两台机器都安装NFS的 软件包,如下显示的是服务器端:[[email protected] /home]$ yuminstall nfs-utils rpcbind

写了一个分布式名字服务JCM

之前在公司里维护了一个名字服务,这个名字服务日常管理了近4000台机器,有4000个左右的客户端连接上来获取机器信息,由于其基本是一个单点服务,所以某些模块接近瓶颈.后来倒是有重构计划,详细设计做了,代码都写了一部分,结果由于某些原因重构就被终止了. JCM是我业余时间用Java重写的一个版本,功能上目前只实现了基础功能.由于它是个完全分布式的架构,所以理论上可以横向扩展,大大增强系统的服务能力. 名字服务 在分布式系统中,某个服务为了提升整体服务能力,通常部署了很多实例.这里我把这些提供相同服

【试水CAS-4.0.3】第06节_CAS服务端配置HTTPS

/** * @see CAS服务端配置HTTPS * @see ------------------------------------------------------------------------------------------------------------------------ * @see 1.生成KeyStore * @see 1.1.D:\>keytool -genkey -alias XuanyuKeyStore -keyalg RSA -validity 10

CentOS6.5安装和配置RabbitMQ3.5.4

CentOS6.5安装和配置RabbitMQ3.5.4 准备工作 1.RabbitMQ是由Erlang语言开发的,所以安装RabbitMQ之前需要安装Erlang 2.在Erlang官网下载安装包otp_src_17.0.tar.gz 地址:http://www.erlang.org/download/otp_src_17.0.tar.gz 3.在RabbitMQ官网下载安装包rabbitmq-server-generic-unix-3.5.4.tar.gz 地址:http://www.rabb

Oracle Net Manager 服务命名配置以及用PL/SQL 登陆数据库

我们知道,要连接一个数据库需要知道四个参数: 1. 登陆用户名:user: 2. 登录密码:password: 3. 存放数据库的服务器地址(server_ip)和端口(server_port): 4. 数据库名(db_name): 我们如果要连接db_name这个数据,除了用户名密码以外,还需要输入类似“server_ip:server_port/db_name”这样一个连接字符串. 如上所述,对于一个数据库连接,我们常常需要记住server_ip.server_port 和 db_name