簡単手軽なDNSキャッシュサーバないかな〜って思ってたらdnsmasqってのがいいらしいとわかったので試してみました。インストールは以下の通りに。
1
2
3
4
5
6
7
8
| # yum install dnsmasq
# vim /etc/resolv.conf
nameserver 127.0.0.1
nameserver 8.8.8.8
# /etc/init.d/dnsmasq start
Starting dnsmasq: [ OK ]
|
なんという手軽さ!! これだけで出来上がりです!!
本当にキャッシュできているか試します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| # dig youyo.info
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> youyo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59083
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;youyo.info. IN A
;; ANSWER SECTION:
youyo.info. 104 IN A 49.212.132.45
;; Query time: 46 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Jan 24 22:32:06 2013
;; MSG SIZE rcvd: 44
# dig youyo.info
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> youyo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64016
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;youyo.info. IN A
;; ANSWER SECTION:
youyo.info. 101 IN A 49.212.132.45
;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Jan 24 22:32:09 2013
;; MSG SIZE rcvd: 44
|
46msecから1msecに! しっかりキャッシュできてます(´ω`)
さらにdnsmasqはDNSラウンドロビンの機能もあるそうで。試します。
“/etc/hosts”にIPとホスト名を書いてdnsmasqを再起動します。”/etc/hosts”で簡単にDNSレコード管理できるのも素晴らしいですね!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
| # vim /etc/hosts
192.168.1.1 test.youyo.info
192.168.1.2 test.youyo.info
192.168.1.3 test.youyo.info
# /etc/init.d/dnsmasq restart
Shutting down dnsmasq: [ OK ]
Starting dnsmasq: [ OK ]
# dig test.youyo.info
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> test.youyo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42090
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;test.youyo.info. IN A
;; ANSWER SECTION:
test.youyo.info. 0 IN A 192.168.1.1
test.youyo.info. 0 IN A 192.168.1.2
test.youyo.info. 0 IN A 192.168.1.3
# dig test.youyo.info
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> test.youyo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10457
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;test.youyo.info. IN A
;; ANSWER SECTION:
test.youyo.info. 0 IN A 192.168.1.2
test.youyo.info. 0 IN A 192.168.1.3
test.youyo.info. 0 IN A 192.168.1.1
# dig test.youyo.info
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> test.youyo.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41275
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;test.youyo.info. IN A
;; ANSWER SECTION:
test.youyo.info. 0 IN A 192.168.1.3
test.youyo.info. 0 IN A 192.168.1.1
test.youyo.info. 0 IN A 192.168.1.2
|
返されるIPの順序が変わっています。ちゃんとDNSラウンドロビンが機能しているようです!
dnsmasqはDNSサーバとしての機能だけでなく、TFTPサーバやDHCPサーバとしても機能するようです。PXEbootに必要な機能を満たしているので、これだけでPXEboot環境を作れそうです!
(試していません。そのうちやってみます…