每天一个shell脚本(13)脚本配置bind(DNS服务)
2020-06-05 07:53
316 查看
如有BUG请看客老爷指出即可,作者正在茁壮成长中!
#!/bin/bash name_rfc(){ echo 'zone "'"$URL"'" IN {' echo " type master;" echo ' file "'"$zone"'";' echo " allow-update { none; };" echo "};" } new_zone(){ read -p "请输入需要解析的IP--->" IPaddr echo "www IN A $IPaddr" } hint(){ echo "请输入要添加的域名,范例(jd.com)" read -p "-->" URL zone="$URL"'.zone' } if_fi(){ while true do hint ls /var/named/ | grep "$URL" &> /dev/null if [ $? -eq 0 ] then break else echo "域名不存在,请重新输入" fi done } read -p "是否为第一次配置named服务(Y/N)" choice while true do case $choice in Y|y) { yum -y install bind &> /dev/null ipadd=`ifconfig ens33 | grep "inet " | awk '{print $2}'` echo "注意!本机IP为$ipadd" echo "请输入监听IP,格式范例(10.0.0.1;)" read -p "---->:" IP dnsip=`cat /etc/named.conf | grep "listen-on port 53" | awk '{print $5}'` sed -i "s/$dnsip/$IP/g" /etc/named.conf sed -i "18s/localhost/any/g" /etc/named.conf break };; N|n) { break };; *) { echo "请重新输入" };; esac done unset choice while true do echo "1-->添加新的域名;" echo "2-->在现有域名添加主机名;" echo "3-->删除整个域名;" echo "4-->删除现有域名的主机名;" echo "5-->退出;" read -p "-->" choice case $choice in 1) { while true do hint ls /var/named/ | grep "$URL" &> /dev/null if [ $? -eq 1 ] then break else echo "域名重复,请重新输入" fi done name_rfc >> /etc/named.rfc1912.zones cp -p /var/named/named.localhost /var/named/$zone echo "请输入主机名,范例(www)" read -p "-->" hostname sed -i "s/@/$hostname.$URL./2" /var/named/$zone sed -i "3,8s/@/$hostname.$URL./g" /var/named/$zone sed -i "9,+5d" /var/named/$zone new_zone >> /var/named/$zone systemctl reload named echo "添加成功!" };; 2) { if_fi new_zone >> /var/named/$zone systemctl reload named echo "添加成功!" };; 3) { if_fi rm -rf /var/named/$zone sed -i "/$URL/,+4d" /etc/named.rfc1912.zones systemctl reload named echo "删除成功!" };; 4) { unset IPaddr if_fi read -p "请输入要删除解析的IP--->" IPaddr sed -i "/$IPaddr/d" /var/named/$zone echo "删除成功!" };; 5) { echo "bye!bye!" exit };; esac done
相关文章推荐
- Linux下Shell脚本部署DNS服务的配置文件
- Centos下配置DNS允许访问谷歌网站(shell脚本实现)
- shell脚本实现nfs服务安装配置,共享文件分发
- 脚本自动实现DNS服务各区域配置文件
- Linux配置 DNS and BIND服务配置详解--缓存服务器配置 正反向解析配置
- 总结之:CentOS6.5 DNS服务BIND配置、正反向解析、主从及压力测试(3) 推荐
- CentOS7 DNS 服务 bind9.94 主从安装与配置
- [置顶] 编写shell脚本以及利用函数实现批量安装Linux服务配置
- 每天一个shell脚本--1
- 用shell脚本快速安装、配置bind
- 4000 一个简单的监控mysql服务的shell脚本
- BIND服务基础及DNS Master服务器配置步骤
- shell脚本实现从master节点批量配置salve节点(主机名有瑕疵,IP映射,ssh服务)
- DNS域名服务 BIND (中)——BIND配置文件
- 【Linux】DNS服务-BIND从服务器、缓存服务器及转发服务器配置(三)
- DNS Bind服务配置解析
- 一个用于导出android项目配置宏为单个独立xml文件的shell脚本
- 脚本自动实现DNS服务各区域配置文件
- 如何用shell写一个rsync网络服务启动脚本?超级详细!
- DNS服务之bind安装配置与应用