2019年3月26日

Dnsmasq - Linux小型DNS伺服器

介紹:
Dnsmasq是一套全功能的網路工具,它包含了DNS、DHCP、Gateway...等幾項功能,
設計目的是能提供小型家用路由器上網服務,
或是PDA、SmartPhone...等小型裝置能透過USB連接電腦上網。
Dnsmasq介紹參考網頁:

介紹目的:
目前AmazonS3要能使用API,必須綁定s3.amazonaws.com才能使用,
這造成需要設定DNS Server才能讓運作正常。
DNS Server建置常見的是Bind9,但Bind9設定複雜,
透過Dnsmasq,我們可以簡單的達成相同目的,但設定簡化。

設定:
Dnsmasq依靠dnsmasq.conf這支設定檔,要修改的部份如下:
  1. Resolv設定
Resolv設定在Dnsmasq中,是告知Dnsmasq,環境中上層DNS主機是誰,
也就是說,當Dnsmasq沒有這條DNS時,要去哪些DNS詢問。
它設定預設會讀取
/etc/resolv.conf

在我自己的使用情境中,我不要它的DNS Server設定和本機的DNS Server設定混在一起,
所以我指定讓它分開,如下:
resolv-file=/usr/local/etc/resolv.conf.dnsmasq

  1. 指定要查詢的主機和IP
設定Dnsmasq,當被詢問到這些網址時,回應的IP是什麼?
設定Dnsmasq,當被詢問到這些網域時,透過哪台DNS Server查詢?

如下:
server=/yahoo.com/168.95.1.1
address=/yimg.com/127.0.0.1
address=/ads.yahoo.com/::1

幾個範例是,當指定server時,表示是設定「網域」,當指定address時,表示是設定「網址」。
設定可以是IPv4或IPv6,::1表示IPv6的127.0.0.1。

  1. 指定服務的網路界面
設定Dnsmasq使用哪張網路界面卡提供服務,如下:
interface=eth0

  1. 設定不要提供DHCP服務
設定Dnsmasq不要提供DHCP服務,如下:
no-dhcp-interface=

這條是要去除最前面的註解,告知Dnsmasq不要提供DHCP服務。

沒有留言: