トップページ | 過去記事(月別カテゴリー別) | 掲示板 | 野良DEB,RPM | 更新チェック | Twitter
<<  2012.5  >>
SMTWTFS
  12345
6789101112
13141516171819
20212223242526
2728293031  
 
リンク
その他
  • RSS2.0
  • Credit

  • SEO
    loading

    プライバシーポリシー
    Google

カテゴリー » Linux » Ubuntu May 15, 2012

dnsmasqのDNSキャッシュを有効にしたい(Ubuntu 12.04) Ubuntu

Ubuntu12.04から名前解決にdnsmasqを使うようになりました。このdnsmasqはDNSキャッシュの機能もあります。ところが、Ubuntu12.04で常駐するdnsmasqは、
$ pgrep -lf dnsmasq
/usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/sendsigs.omit.d/network-manager.dnsmasq.pid --listen-address=127.0.0.1 --conf-file=/var/run/nm-dns-dnsmasq.conf --cache-size=0 --proxy-dnssec
--cache-size=0 ってことで、キャッシュ無効で起動しています。

せっかくdnsmasqが動いているのだから、このままではもったいないと思うわけなんですが、
あとdnsmasqのキャッシュをONにしようとしても、NetworkManagerのバイナリに--cache-size=0がハードコードされてるので無理w。NetworkManager.confでdnsmasq切り離すしかないっていう。
サクッと簡単に変更できないのか〜

うーん、こんな感じでいいのかな…
1. /etc/NetworkManager/NetworkManager.conf の dns=dnsmasq を消す。
2. sudo apt-get install dnsmasq
3. /etc/dnsmasq.d/hoge に
listen-address=127.0.0.1
cache-size=500
と書いた
4. sudo service network-manager restart
5. sudo service dnsmasq restart
6. /etc/resolv.conf の上部に「nameserver 127.0.0.1」があるか確認する。
終わったあと、問い合わせにかかる時間をdigコマンドで計ってみると、
一回目
$ dig ikoinoba.net
;; Query time: 20 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
二回目 $ dig ikoinoba.net ;; Query time: 1 msec ;; SERVER: 127.0.0.1#53(127.0.0.1)
うむ、キャッシュが効いているようです。
10:23 pm | コメントする |

累計:59436、今日:622、昨日:691
Created in 0.0076 sec.