这个脚本用于快速配置dns,输入域名、ip即可,如果有什么特殊的配置,稍微修改一下就可以了

代码:

#!/bin/bash

#获取url
echo "url:"
read url #获取ip
echo "ip:"
read ip #向/etc/named.rfc1912.zones尾插入
#zone "$url" IN {
# type master;
# file "$url.zone";
# allow-update{ none; };
#}; cat>>/etc/named.rfc1912.zones<<EOF zone "$url" IN {
type master;
file "$url.zone";
allow-update{ none; };
};
EOF #复制生成文件
cp -a /var/named/named.localhost /var/named/${url}.zone #向/var/named/${url}.zone中插入
#$TTL 1D
#@ IN SOA $url admin.$url. (
# ; serial
# 1D ; refresh
# 1H ; retry
# 1W ; expire
# 3H ) ; minimum
# NS datav.aliyuncs.com.
# A $ip cat>/var/named/${url}.zone<<EOF
\$TTL 1D
@ IN SOA $url admin.$url. (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS $url.
A $ip
EOF #完成
echo "$url $ip complete"

注释(#开头的那一行)我觉得是写的挺清晰的,dns服务器提供解析某个域名到某个ip地址,所以这里的基本原理就是读取输入域名和ip,向named.rfc1912.zones和${url}.zone(由以前的配置文件复制产生)中插入配置语句。

效果就是:

然后重启named即可。

还有只修改了获取参数的方法,其他的不变的另一个脚本

#!/bin/bash

#获取url
url=$
#获取ip
ip=$ #向/etc/named.rfc1912.zoneswz尾插入
#zone "$url" IN {
# type master;
# file "$url.zone";
# allow-update{ none; };
#}; cat>>/etc/named.rfc1912.zones<<EOF zone "$url" IN {
type master;
file "$url.zone";
allow-update{ none; };
};
EOF #复制生成文件
cp -a /var/named/named.localhost /var/named/${url}.zone #向/var/named/${url}.zone中插入
#$TTL 1D
#@ IN SOA $url admin.$url. (
# ; serial
# 1D ; refresh
# 1H ; retry
# 1W ; expire
# 3H ) ; minimum
# NS datav.aliyuncs.com.
# A $ip cat>/var/named/${url}.zone<<EOF
\$TTL 1D
@ IN SOA $url admin.$url. (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS $url.
A $ip
EOF #完成
echo "$url $ip complete"

这个只是用法上不一样,效果如下:

至于named的安装,以及为什么插入那样的配置语句网上到处都是教程。

dns自动配置shell脚本的更多相关文章

  1. tomcat监控,自动重启shell脚本

    tomcat监控,自动重启shell脚本如下,取名 monitor_tomcat.sh: #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作 # 获取tomcat进程ID(其中 ...

  2. centos7 开机自动执行shell脚本

    centos7 开机自动执行shell脚本 90十80 关注 2018.12.23 09:37 字数 309 阅读 485评论 0喜欢 0 自己新建一个脚本,如centnet-service.sh 经 ...

  3. 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结

    系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...

  4. MySQL自动备份shell脚本

    在数据库的日常维护工作中,除了保证业务的正常运行以外,就是要对数据库进行备份,以免造成数据库的丢失,从而给企业带来重大经济损失.通常备份可以按照备份时数据库状态分为热备和冷备,按照备份数据库文件的大小 ...

  5. Linux Shell 脚本学习第一天: 使用grep 命令,lsusb, ps -ef, 实现树莓派(Debian OS)时检测到依赖的USB设备启动后,启动终端自动执行shell脚本

    1.应用背景: 无人监测的设备,常需要设置应用程序开机启动,程序启动前需要保证调用的设备先启动,运行环境先启动. 2.test.sh部分源码 #!/bin/sh #查看桌面是否启动 while tru ...

  6. pgsql自动安装shell脚本整理

    前面不断在vm虚拟机上测试pgsql,发觉安装还是有些麻烦的. 所以就收集了一些 1,http://www.davidghedini.com/pg/entry/postgresql_9_5_scrip ...

  7. nginx奔溃自动重启Shell脚本

    # vi /usr/local/nginx/sbin/nginx_restart.sh 贴入一下代码: #!/bin/bash #www.xmsolink.com #Monitor nginx ser ...

  8. CentOS MySQL自动备份shell脚本

    先执行  vim/mysqlBack/back.sh 然后添加以下内容 ## 记录日志 # 以下配置信息请自己修改 mysql_user="root" #MySQL备份用户 mys ...

  9. iptables交互配置shell脚本

    #!/bin/bash while true do clear echo "———————-menu————————" echo -e "\033[49;32;1m(1) ...

随机推荐

  1. OC CollectionView和TableView自身高度的隐式递归计算,改变父试图布局

    CollectionView和TableView自身高度的隐式递归计算 1.前沿:我们一般会碰到这样的需求,一个tableview或者一个colletionview放在一个scrollview上边,而 ...

  2. 嵊州D1T1 总统先生,一路走好!

    嵊州D1T1 总统先生,一路走好! 在总统先生的所有财产就是 n 杯黑咖啡,咖啡店可以用 m 个空杯子换一杯黑咖啡. 因为总统的特殊身份,心地善良而心生怜悯的咖啡店店长决定先借给总统一杯黑咖啡,只要他 ...

  3. 常见Code Review过程中发现的问题-续

    上一篇列举了一些比较常见的Code Review问题列表,文末有链接,可追溯查看.本篇为上篇的姊妹篇,继续列举一些上篇遗漏的或不易发现的问题清单,希望能整体性把一些常见的问题表述出来. 测试数据不具有 ...

  4. ElementUI 简要源码解析——Basic篇

    Layout 布局 row 布局组件中的父组件,用于控制子组件.很简单的一个布局标签,主要通过 justify 和 align 控制子元素的对齐方式,使用 render 函数通过传入的 tag 属性控 ...

  5. Windows 10打开远程桌面的方法

    今天使用windows 10,想要用远程桌面连接,可是怎么都找不到,哎,win10相比于win7和XP系统,感觉还是有点使用不习惯.不过后来还是找到了两个方法,在此记录下来,分享给需要的朋友. 1. ...

  6. 不调用free会内存泄露吗?

    内存泄露的概念大家可以自行百度下,本文不做阐述.本文要讲的是在程序中分配了内存,但是最后没有使用free()函数来释放这块内存,会导致内存泄露吗?比如有如下代码: #include <stdio ...

  7. 每日一问:View.getContext() 的返回一定是 Activity 么?

    坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 一般我们被问到这样的问题,通常来说,答案都是否定的,但一定得知道其中的原 ...

  8. HDU-1576 A/B 基础数论+解题报告

    HDU-1576 A/B 基础数论+解题报告 题意 求(A/B)%9973,但由于A很大,我们只给出n(n=A%9973) (我们给定的A必能被B整除,且gcd(B,9973) = 1). 输入 数据 ...

  9. Error:Some file crunching failed, see logs for details

    Information:Gradle tasks [:myapp2:assembleDebug] Error:Some file crunching failed, see logs for deta ...

  10. [小米OJ] 10. 爬楼梯

    dp 另: 小米oj上的测试样例是错的 ; ) function solution(line) { if (line == 0) return 0; if (line == 1) return 1; ...