(二)跟我一起玩Linux网络服务:BIND的自动部署(附上完整的代码)
2015-03-24
如果看了我之前写的文章 DNS服务——BIND(/etc/named.conf、/var/named)设置实现和解释,再来看这篇文章,你会发现部署BIND是件很简单的事情
如果本文有什么看不懂得,可以看上面的连接的文章,里面介绍解释的很相尽
自动部署其实就是我们的shell脚本,通过对特殊符号的结束输入,使得变得非交互了。
自动部署的好处就是方法是一样的,步骤也是一样,就是这里部署的IP和反IP(RIP)要自己设置。
注:
(1)执行这个命令可能用到root用户的权限,如果是root用户的话直接用,不是root用户建议在所有cat(所有命令前加sudo,没有的百度一下)使用。
(2)下面的比如本机的ip是192.168.133.10,RIP就是10.133.168.192(学过的都明白,没学过的可以找找反向域名解析的内容)。
(3)+END+ 就是结束符,实在cat 语句的<<的后面定义好了,这个东西不一定的,你可以换其他的东西,只要你的后面输入的东西只有结束的时候才有这个奇怪的东西才行,否则会有问题的
(4)/var/named/下的文件是“$TTL”开头的,但是在shell脚本中,属于一个变量,所以就要加上“\”表示反编译,不表示变量
使用命令(其实你可以将该shell文件放在任何地方,任何名字)
#cat > /home/dnsgen.sh
#! /bin/bash IP="192.168.133" RIP="133.168.192" cat >> /etc/named.conf << +END+ zone "gr.org" IN { type master; file "gr.org.db"; }; zone "$RIP.in-addr.arpa" IN{ type master; file "$IP.db"; }; +END+ cat > /var/named/gr.org.db <<+END+ \$TTL 86400 @ IN SOA ns.gr.org. root.gr.org. ( 20150317 6H 30M 1W 15M) IN NS ns.gr,org. IN MX 10 mail.gr.org. bbs IN CNAME www.gr.org. ns IN A $IP.10 www IN A $IP.10 mail IN A $IP.11 +END+ cat > /var/named/$IP.db <<+END+ \$TTL 86400 @ IN SOA ns.gr.org root.gr.org.( 20150317 6H 30M 1W 15M) IN NS ns.gr.org. 10 IN PTR ns.gr.org. 10 IN PTR www.gr.org. 11 IN PTR mail.gr.org. +END+ cat > /etc/resolv.conf <<+END+ nameserver 10.10.10.10 +END+
分类:
跟我一起玩Linux网络服务
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义