前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DNS部署(3)---------源码b

DNS部署(3)---------源码b

作者头像
py3study
发布2020-01-06 22:24:48
5980
发布2020-01-06 22:24:48
举报
文章被收录于专栏:python3python3

其实一般使用redhat或centos中自带的rpm安装bind是十分简单的,但是源码安装可以让你对bind文件的整体结构有了更好的认识

先下载一个源码包:https://www.isc.org/downloads/bind/

wKiom1MufEaCEiT2AAGHrV32e3s391.jpg
wKiom1MufEaCEiT2AAGHrV32e3s391.jpg

直接下载即可。

wKiom1MufRjxNrCeAABizkg2t0A988.jpg
wKiom1MufRjxNrCeAABizkg2t0A988.jpg
wKiom1MufYDTOVYqAAJrL_9CFJU821.jpg
wKiom1MufYDTOVYqAAJrL_9CFJU821.jpg

进入目录后就可以编译了,对于编译的模块就不细说了直接查询即可。

wKioL1MufcfwcnFGAABVO6HVA6c888.jpg
wKioL1MufcfwcnFGAABVO6HVA6c888.jpg

但是有几个模块是必须要装的gccopensslperl的相关组件,如果不想安装必须用--without把模块排除在外,下面开始编译:

wKioL1Muf63DspLyAAE_L4dBKoM503.jpg
wKioL1Muf63DspLyAAE_L4dBKoM503.jpg
wKiom1MugNaQ7eTuAAQFboBT9ZI031.jpg
wKiom1MugNaQ7eTuAAQFboBT9ZI031.jpg

直接安装即可

wKioL1MugOHgHkfPAABoY5NsvDQ547.jpg
wKioL1MugOHgHkfPAABoY5NsvDQ547.jpg

安装好后,就得到了这俩个文件夹

wKioL1MugjajS2MxAAHfs68k0pY324.jpg
wKioL1MugjajS2MxAAHfs68k0pY324.jpg

下面就开始写named的各种配置文件,相对于rpm包,源码包装出来什么都没有。。。

首先要创建一个named系统用户

wKiom1MuhgvB77T-AABZTF1fmOo432.jpg
wKiom1MuhgvB77T-AABZTF1fmOo432.jpg

完成脚本的链接:

wKiom1Mui0ugExfAAADmAG5Gik0113.jpg
wKiom1Mui0ugExfAAADmAG5Gik0113.jpg

写入后要记得用 ---------------source加载

1、在/etc/named/中创建named.conf文件

wKiom1Mug_zivMuVAAMRiDCRP4Y005.jpg
wKiom1Mug_zivMuVAAMRiDCRP4Y005.jpg
wKioL1MuhAzRsM6-AABTNjGgCUI517.jpg
wKioL1MuhAzRsM6-AABTNjGgCUI517.jpg
wKiom1MuhWyTP95zAAA6hOIFw3M608.jpg
wKiom1MuhWyTP95zAAA6hOIFw3M608.jpg
wKioL1MuhUThQYWJAAM4L0ulrp0875.jpg
wKioL1MuhUThQYWJAAM4L0ulrp0875.jpg

在配置文件的目录中就会有这么几个文件,修改它们权限为named!!!!

wKiom1Muhp6h31yLAAFfYa1Ya5s395.jpg
wKiom1Muhp6h31yLAAFfYa1Ya5s395.jpg

配置文件大致上就设置好了,下面就要根据named.conf中指定写zone文件了


wKioL1MuiI3Bz8dHAABQul3ug6E981.jpg
wKioL1MuiI3Bz8dHAABQul3ug6E981.jpg
wKiom1MuiLSh-WGZAAFxdXqkrio812.jpg
wKiom1MuiLSh-WGZAAFxdXqkrio812.jpg

一个个开始编写吧

wKioL1MuiWrjrwMaAAQGwTmAk8w149.jpg
wKioL1MuiWrjrwMaAAQGwTmAk8w149.jpg

在编写localhost.zone和named.local文件

wKioL1MuigDgfYseAAG8EzjjaQA436.jpg
wKioL1MuigDgfYseAAG8EzjjaQA436.jpg

开始服务即可

wKiom1Mui-zSDSWdAATS0z5MSgg221.jpg
wKiom1Mui-zSDSWdAATS0z5MSgg221.jpg
wKioL1MujCmDw3TFAAIXBO4yl-s353.jpg
wKioL1MujCmDw3TFAAIXBO4yl-s353.jpg

这样就算是安装完成了,当然还可以写一个启动脚本放到/etc/init.d/下面,就完美了

代码语言:javascript
复制
#/bin/bash
#chkconfig 2345 70 50
#description named
#author joe
[ -r /etc/init.d/functions ] && . /etc/init.d/functions
//判断functions库函数是否可读
Pidfile="/usr/local/bind9/var/run/named.pid"//默认pid路路径
Lockfile="/var/lock/subsys/named"//脚本锁文件
named="named"//服务
start() {
[ -x "/usr/local/bind9/sbin/$named" ] || exit 4
if [ -f $Lockfile ];then
echo  "the $named is already running"
exit 5
fi
echo -n "starting $named "
daemon --pidfile "$Pidfile"  /usr/local/bind9/sbin/$named -u named -4
RETAVL=$?
echo
if [ $RETAVL -eq 0 ];then
touch $Lockfile
return 0
else
rm -f $Lockfile $Pidfile
return 1
fi
}
stop(){
if [ ! -f $Lockfile ];then
echo "the $named is stopped.... "
exit 5
fi
echo -n "stopping the $named.."
killproc $named
RETAVL=$?
echo
if [ $RETAVL -eq 0 ];then
rm -f $Lockfile
fi
}
reload(){
if [ ! -f $Lockfile ];then
echo "the $named is stopped "
exit 5
fi
echo -n "reload the config file"
killproc $named -HUP
RETAVL=$?
echo
}
status(){
if pidof $named &>/dev/null && [ -f $Pidfile ];then
echo "the $named is starting"
else
echo "the $named is stopped"
fi
}
case $1 in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
sleep 1
start
;;
status)
status
;;
*)
echo "Usage:||"
;;
esac
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档