如何手動編譯bind,如何使用view實現智能DNS解析,以及如何對DNS服務器進行壓力測試。

        今天帶大家來看看如何手動編譯源碼bind,自己手動編譯安裝的很多文件都要自己去建立,配置文件也要從零寫起,而且沒有服務啓動腳本,需要自己編寫啓動腳本。

實驗規劃:

        1、在192.168.1.200這臺主機上編譯安裝bind,完成後爲named服務編寫啓動腳本,加入到service。

        2、配置view實現智能DNS解析:當請求解析www.tuchao.com,來源爲192.168.1.0/24時候,解析到192.168.1.100。其他的來源都解析到外網地址,1.1.1.1

        3、使用queryperf 對服務器進行壓力測試,看看每秒最多能迴應多少請求。

 

我們先按順序一個一個來,首先準備編譯bind,在編譯之前請確保系統已經安裝了開發組件。

# tar -zxvf bind-9.10.0-P1

# cd bind-9.10.0-P1

# ls

這些就是源程序:

wKioL1N6OfODZPZqAAHJxDFid2Y914.jpg

# ./configure --help    查看配置的幫助信息

# ./configure --sysconfdir=/etc/named --prefix=/usr/local/bind --enable-epoll --disable-ipv6 --disable-chroot --enable-threads    

這就已經在檢測編譯環境,按配置需求生成makefile了。

wKiom1N6POuTxmmQAAH1sJweKs8014.jpg

檢測完成以後:

wKioL1N6PWzzbWqfAALfKwBpLtY899.jpg

# make && make install

等待編譯安裝完成。

wKiom1N6PhXTn2eRAAJ4VrM2waU477.jpg

爲了啓動方便,我們先爲named編寫服務腳本。

# vim /etc/rc.d/init.d/named

下面是小菜寫的腳本,可能不是很完善,不過可以給大家做做參考。

wKioL1N6Qnfy8NCQAAVXEFD0B98552.jpg

好,腳本完成了,接下來修改PATH環境變量。

# vim /etc/profile.d/bind.sh

export PATH=/usr/local/bind/bin:/usr/local/bind/sbin:$PATH

包含man文件。

# vim /etc/man.config

MANPATH /usr/local/bind/share/man

 

接下來,創建/etc/named/named.conf主配置文件。

# vim /etc/named/named.conf

參考或者寫入以下內容:

wKiom1N6RkyhWMgwAAKZv6vcQ7c007.jpg

然後去創建區域解析文件。

根文件:

# mkdir /var/named

# dig -t NS . >/var/named/named.ca

wKioL1N6RzzDWzz0AAMPbcPUwRQ713.jpg

localhost.zone 本機正向區域解析文件:

wKiom1N6R9fjGc2IAACHqXLoTz4145.jpg

named.local  本機反向區域解析文件:

wKioL1N6SAHDs3LmAACCgNwejnQ636.jpg

internal.tuchao.com.zone   "tuchao.com" 區域解析文件:

wKiom1N6SK7SrOxsAADWQ4f2RbU071.jpg

external.tuchao.com.zone   “tuchao.com”區域解析文件:

wKiom1N6SRqwzyudAADRXzXMVAc183.jpg

 全部都配置完成了,接下來用我們剛剛寫的腳本,啓動下named服務。

# /etc/init.d/named start

看下,是不是已經啓動。

wKioL1N6SeXhxrcvAAEtZ5iT0Ko263.jpg

看下能不能實現智能解析:

我們先用本機解析下www.tuchao.com

解析成功了哈,解析的結果是192.168.1.100。

wKiom1N6St7T5Eq3AAHRmvfLYP0537.jpg

 這次我們把來源換成172.16.0.2 這臺主機請求,看看解析地址會不會變成外網的。

# dig -t A www.tuchao.com

結果是不是變成了1.1.1.1 ,這就是智能DNS可以根據來源,判斷以哪個區域文件進行解析。

wKiom1N6Ta2zOQtuAAHGMQ9Xcuc386.jpg

想必看到這裏,大家都有點累了吧,其實小菜也寫累了,但是堅持一下一鼓作氣搞完。

如何對服務器進行壓力測試,我們要用的就是queryperf 這個工具,我們先去編譯它。

# cd /root/bind-9.10.0-P1/contrib/queryperf

# ./configure

# make

編譯好後,直接拷貝到/bin目錄下就可以使用了。

先創建一個查詢文件,如# vim /tmp/cha.txt

寫入類似內容,複製至數萬行,才能達到測試效果。

wKiom1N6UTLTNiUmAABruAu6zOE787.jpg

 

基本用法:

        queryperf -d  指定查詢列表文件

                          -s 指定Server

現在來測試下試試:

 # queryperf -d /tmp/cha.txt  -s 192.168.10.200

wKioL1N6U8DQI1yoAAI4MgCKuw0993.jpg

 

總共查詢了665062次,完成665062次。

平均每秒可以響應22974次。

性能還不錯哦!

好了,任務完成了,該睡覺了。

以上內容純小菜手打,實驗親測截圖,有問題歡迎與我交流QQ:1183710107

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章