作者:上村崇 フリーランスのIT系エンジニア
twitter:@uemera facebook:uemura

2D


toyaoWebサーバーが、外部からのアクセスだとサクサク動くのに、家庭内LANからだとなんか待たされる感があって、「なんでかな?」と思ったので調べてみました。
mdnsというポートからのパケットがなにやら送信リトライを繰り返していました。マルチキャストDNSというものでした。
その語句自体は初めて聞くもので、どうやらApple社の開発したRendezvousというプロトコルに関係するものだそうな。
最初はそれをインストールすれば問題は解決するんかな?と思っていろいろ調べていたけど、どうも方向性が違うような気がしたので、
試しに /etc/hosts にwindowsクライアントのマシン名を登録するとサクっと解決しました。
WebサーバーとWindowsクライアントの間で名前解決出来てないだけでした。

Windowsマシンが固定IPアドレスならばこれで解決なのだけれど、うちにはDHCPクライアントマシンがあと2台…
案の定それらのマシンからは問題解決してなかったので、
そういえば、DHCPで取得したIPアドレスはプライベートネットワーク間でどうやって名前解決してるんやろう…と思って
いろいろ調べてみたら、DHCP+DNSのコラボで解決出来ることがわかりました。

DHCPとDynamic DNSの連携システム

DNSサーバーって聞くとなんか難しそうな感じがしてたので、今まで避けて来たのですが、この際勉強してみるのもいいかなと思って設定しました。

/etc/named.confの設定

// プライベートネットワーク内からのみアクセスを許可
acl toyao-net {
192.168.xxx.0/24;
127.0.0.1;
};

//ゾーンの設定
zone “toyao.net” {
type master;
file “/etc/bind/db.toyao.zone”;
allow-update{
127.0.0.1; #DHCPサーバのアドレスを指定
};
};
zone “xxx.168.192.in-addr.arpa” {
type master;
file “/etc/bind/db.toyao.rev”;
allow-update{
127.0.0.1; #DHCPサーバのアドレスを指定
};
};

/etc/bind/db.toyao.zone の内容
db.toyao.revも同じ内容でいいので作っておく。(だけど別ファイルにしないとうまくいかない)

$TTL 604800
@ IN SOA localhost. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS localhost.

/etc/resolv.conf の設定

nameserver 192.168.xxx.xxx ← プライベートDNSサーバーのアドレス
nameserver yyy.yyy.yyy.yyy ← ISP提供のDNSサーバーのアドレス
nameserver xxx.xxx.xxx.xxx

/etc/dhcp3/dhcpd.conf の設定

zone toyao.net. { #正引きtoyao.netのマスター・ゾーンサーバを指定
primary localhost;
}

zone xxx.168.192.in-addr.arpa. { #逆引きxxx.168.192.in-addr.arpaのマスター・ゾーンサーバを指定
primary localhost;
}

bindのリスタート

/etc/init.d/bind9 restart

dhcpdのリスタート

/etc/init.d/dhcp3-server restart

DHCPクライアントがIPアドレスを取得したときに、サーバー側で以下のようのログが/var/log/syslog に出ていればOKです。

named[10947]: client 127.0.0.1#33119: updating zone ‘toyao.net/IN’: adding an RR at ‘vaioU.toyao.net’ A
named[10947]: client 127.0.0.1#33119: updating zone ‘toyao.net/IN’: adding an RR at ‘vaioU.toyao.net’ TXT
named[10947]: journal file /etc/bind/db.toyao.zone.jnl does not exist, creating it
dhcpd: Added new forward map from vaioU.toyao.net to 192.168.xxx.19
named[10947]: client 127.0.0.1#33119: updating zone ‘xxx.168.192.in-addr.arpa/IN’: deleting rrset at ’19.xxx.168.192.in-addr.arpa’ PTR
named[10947]: client 127.0.0.1#33119: updating zone ‘xxx.168.192.in-addr.arpa/IN’: adding an RR at ’19.xxx.168.192.in-addr.arpa’ PTR
named[10947]: journal file /etc/bind/db.toyao.rev.jnl does not exist, creating it
dhcpd: added reverse map from 19.xxx.168.192.in-addr.arpa. to vaioU.toyao.net

関連記事


Linux debianでRAID(ミラーリング)構築。mdadmとpartedで
mdadmによるRAID (ミラーリング)構成手順です。ディスクが1台壊れたのでRAIDを組み直しました。環境はLinux Debian 9.11 (stretch) partedやmdadmコマンドで構築します。

Postfixメールサーバー:送信不可のユーザーを設定する
メールサーバーPostfixにて、送受信ができないユーザーを設定をする方法です。Linux、debian環境です。特定のメールアドレスを送受信不可にします。メールを許可しないLinuxユーザーを作るときに有効です。

Web開発・Web制作のツールや用語を初心者向けに大量紹介。これだけ知っておけば安心。
Webページ製作やWebのシステム開発ではいろんなツールやテクニック、用語を使いますが、全体像がなかなか掴みにくいと思ったので、初心者向けに用語をたくさんまとめました。これさえ押さえておけば業界の常識用語はだいたい網羅できると思います。

KVM仮想マシンをWebからアクセスできるKimchiをdebianにインストール
自宅サーバーにてKVMの仮想マシンを動かしていますが、外からでもリモートで操作できるようにkimchiを導入しました。 GitHub – kimchi-project/kimchi: An HTML5 man …

Linuxの権限について解説。setuidとかsetgidとかスティッキービットとか
setuidとかsetgidとかスティッキービットの解説です。Linuxのこれらの機能については考え方が難しいですが、setuidは「一般ユーザーがroot権限で動かすことができる仕組み」です。setgidはそのグループ版です。詳細なメカニズムを解説します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です