shell指令碼實現DNS正向解析

2021-10-13 12:56:40 字數 1976 閱讀 2379

[root@bogon ~] # cat dns.sh

#!/bin/bash

#檢測是否掛載

df | grep "sr0"

if [ $? -eq 0 ];then #掛載則直接安裝dns軟體包

yum -y install bind &> /dev/null #將標準輸出、標準錯誤輸出匯入到黑洞檔案中

else

mount /dev/sr0 /mnt &> /dev/null #若沒掛載,則先進行掛載,再安裝軟體包

yum -y install bind &> /dev/null

fi#修改主配置檔案 :/etc/named.conf

#直接修改檔案,把匹配行的第乙個127.0.0.1改為any

sed -i 's/127.0.0.1/any/' /etc/named.conf

#直接修改檔案,把匹配行的第乙個localhost改為any

sed -i 's/localhost/any/' /etc/named.conf

#修改區域配置檔案 :/etc/named.rfc1912.zones

#直接修改,用lisi.com替換匹配行的第乙個localhost.localdomain

#直接修改,用lisi.com替換匹配行的第乙個named.localhost

sed -i 's/named.localhost/lisi.com.zone/' /etc/named.rfc1912.zones

#直接修改,刪除18到100行

sed -i '18,100d' /etc/named.rfc1912.zones

#修改區域資料配置檔案 :/var/named/named.localhost

cd /var/named

cp -p named.localhost lisi.com.zone #複製時保留原屬性

#直接修改,把檔案中所有的@替換為lisi.com.

sed -i 's/@/lisi.com./g' /var/named/lisi.com.zone

#直接修改,把檔案中所有的127.0.0.1替換為192.168.2.4

sed -i 's/127.0.0.1/192.168.2.4/' /var/named/lisi.com.zone

#直接修改,在第9行下面新增www in a 192.168.2.4

sed -i '9a www in a 192.168.2.4' /var/named/lisi.com.zone

#直接修改,刪除帶有aaaa的那一行

sed -i '/aaaa/d' /var/named/lisi.com.zone

#在第一行下面新增指定dns伺服器位址

sed -i '1a nameserver 192.168.2.4' /etc/resolv.conf

#關閉系統防火牆和系統安全機制

systemctl stop firewalld

setenforce 0

#開啟dns服務

systemctl restart named

驗證是否解析成功

[root@bogon ~] # chmod +x dns.sh 

[root@bogon ~] # ./dns.sh

[root@bogon ~] # host www.lisi.com

www.lisi.com has address 192.168.2.4

[root@bogon ~] # nslookup www.lisi.com

server: 192.168.2.4

address: 192.168.2.4#53

name: www.lisi.com

address: 192.168.2.4

DNS正向解析實現

dns正向解析實現 一.資源記錄 區域解析庫是由眾多資源記錄 resource record,簡稱 rr 組成。資源記錄由 a,aaaa,ptr,soa,ns,cname,mx,txt,spt等記錄型別組成。接下來我們一起來介紹一下常用的記錄型別含義 soa 全稱為 start of authori...

使用Shell指令碼一鍵部署DNS正向解析

bin bash 首先先判斷檢查磁碟是否掛載 df grep sr0 將過濾出來的sr0交給df檢視是否已經掛載 if eq 0 then 如果掛載了 yum install y bind dev null 就安裝bind軟體包 else 如果沒有掛載 mount dev sr0 mnt 先掛載磁碟...

Shell指令碼實戰 DNS主從同步指令碼例項

ps 兩個伺服器起好後最好兩個服務都重啟一下 bin bash dns主從同步 主伺服器 rpm q bindif ne 0 then yum install bind y systemctl start named fi 判斷dns服務是否安裝 read p 網域名稱 請帶字尾 yu quanju...