« コミケ鞄 | トップページ | DHCPサーバも立てる »

2013年1月17日 (木)

内向きDNSサーバを立てた

自宅wwwサーバにアクセスする時、ドメインでのアクセス以外は弾く設定になっていて、自宅内のネットワークからはhostsに自宅サーバのドメインを登録してやることで閲覧していた。
ところが最近入手したiPadminiやらNexus7やらスマホやらはhostsをいじらせてくれない。
自宅で目の前にサーバがあるのに、いちいちWinax回線で外からアクセスするとかやってらんないので、wwwサーバに簡易DNSサーバ機能を追加してやることで、自宅のWifiからはローカルIPアドレスに名前解決、外部からは今までどおりにダイナミックDNSで名前解決したいと思った次第。
さて、DNSサーバといえばBIND。しかしたった一台のサーバの名前解決するためにBINDなんて大げさではないか。なにより設定が面倒そうだ。
オライリーの読みづらい本とか、300ページくらいある解説本とか読むなんていやだ。
たかがiPadからローカルのWebサーバにアクセスするためだけに。
うちのルータがYamaha製なら、簡易DNSサーバ内蔵で簡単解決なんだけど生憎NEC製。
そこでgoogle先生に「簡易DNSサーバ ubuntu」とか聞いてみると、dnsmasqなる便利そうなものがあるらしい。
/etc/hostsを書き換えるだけで名前解決してくれるらしい。
参考にさせていただいたページはこちらこちらこちら
以下、将来再インストールするときのための覚書。

・まず、Ubuntu12.04ではNetworkManagerがdnsmasqを使っているそうなのでこれをはずす。
/etc/NetworkManager/NetworkManager.confのdns=dnsmasqを「#dns=dnsmasq」とコメントアウト。
・次に「sudo service network-manager restart」としてNetworkManagerを再起動。
「sudo aptitude install dnsmasq」でdnsmasqをインストール。
これで/etc/resolv.confは「nameserver 127.0.0.1」とローカルを指すように書き換わっているはず。
「cat /var/run/dnsmasq/resolv.conf」とするとルータのipアドレスになってるはず。
・/etc/dnsmasq.confを修正する。
「no-dhcp-interface=eth0」と「cache-size=500」。DHCPしない設定とdnsキャッシュ設定。
・/etc/hostsに名前解決したいサーバとipアドレスを書き込む。
「192.168.0.100 www.mysaba.net」とか。
・「sudo service dnsmasq restart」としてdnsmasqを再起動。
・「sudo sysv-rc-conf dnsmasq on」として自動起動に設定。
・nslookupでグーグルとかの名前解決してみる。
・ローカルネットワーク内のPCで優先DNSサーバを自宅サーバのアドレスにして同様に名前解決テスト。デフォルトゲートウェイはルータのまま。
・うまくいくようなら、ルータのDHCP設定にて、DNSサーバをローカル指定に書き換える。

さて、ここで問題が発生。
NECのルータは、DHCP設定でDNSサーバが指定できないのでした。
なんだよそれ。WINSサーバは指定できるのになんでだよ。

« コミケ鞄 | トップページ | DHCPサーバも立てる »

自宅サーバ覚書」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« コミケ鞄 | トップページ | DHCPサーバも立てる »

parts

無料ブログはココログ