ダミーのDNSサーバを立てる必要があったのでメモ。
環境はCentOS6.10です。まずはyumでインストールしてみる。
#yum install dnsmasq 読み込んだプラグイン:fastestmirror, refresh-packagekit, security インストール処理の設定をしています Loading mirror speeds from cached hostfile * base: ftp.iij.ad.jp * epel: ftp.iij.ad.jp * extras: ftp.iij.ad.jp * updates: ftp.iij.ad.jp パッケージ dnsmasq-2.48-18.el6_9.x86_64 はインストール済みか最新バージョンです 何もしません
おや?デフォルトに入っているようだ。
下記で確認してみると確かにインストールされていて停止している。
# /etc/rc.d/init.d/dnsmasq status dnsmasq は停止しています
dnsmasqでダミーで確認したいホスト情報を/etc/hostsに書き込んでおく。
下記ではLAN内のqnapというホストを名前解決出きるようにした。
172.23.0.2 qnap
そして/etc/dnsmasq.confで上記の/etc/hostsを参照するように設定。
# If you don't want dnsmasq to read /etc/hosts, uncomment the # following line.# dig qnap @127.0.0.1 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.1 <<>> qnap @127.0.0.1 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19847 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;qnap. IN A ;; ANSWER SECTION: qnap. 0 IN A 172.23.0.2 #no-hosts # or if you want it to read another file, as well as /etc/hosts, use # this. #addn-hosts=/etc/banner_add_hosts addn-hosts=/etc/hosts
では起動してみよう。
# /etc/rc.d/init.d/dnsmasq start Starting dnsmasq: dnsmasq: failed to create listening socket: Address already in use [失敗]
なんかすでに使用されているようなメッセージが。
53番ポートを使っているものを調べよう。おや?dnsmasqとなっている。
上記では停止していて、ポートは使用中で起動できなかったのに、よくわからない・・・まぁ、とりあえずkillしてしまおう。
[root@cent6 malt]# lsof -i:53 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME dnsmasq 11946 nobody 6u IPv4 23576 0t0 TCP 192.168.122.1:domain (LISTEN) dnsmasq 11946 nobody 7u IPv4 23577 0t0 UDP 192.168.122.1:domain [root@cent6 malt]# kill 11946# dig qnap @127.0.0.1 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.1 <<>> qnap @127.0.0.1 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19847 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;qnap. IN A ;; ANSWER SECTION: qnap. 0 IN A 172.23.0.2
では再度起動してみよう。今度はうまく起動した。
# service dnsmasq start Starting dnsmasq: [ OK ]
ではdigコマンドで本当に上記のdnsmasqに対して名前解決の問い合わせをしてみる。
# dig qnap @127.0.0.1 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.1 <<>> qnap @127.0.0.1 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19847 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;qnap. IN A ;; ANSWER SECTION: qnap. 0 IN A 172.23.0.2
ちゃんと/etc/hostsに記載した172.23.0.2が返ってきた。
問題ないようだ。