月別アーカイブ: 2012年2月

BIND9 のエラー その他

まず、1件目。

...
Feb 22 12:44:27 hanon named[11934]: error (unexpected RCODE REFUSED) resolving 'ns.bta.net.cn/A/IN': 202.106.196.233#53
Feb 22 12:44:27 hanon named[11934]: error (unexpected RCODE REFUSED) resolving 'ns.bta.net.cn/A/IN': 202.106.196.234#53
...

RCODE とは DNS のレスポンスコードで “5:何らかの理由による拒否(Refused)” ということらしい。

このケースでは、たまたま、ということで無視して良いのかな?

2件目。

...
Feb 22 12:44:31 hanon named[11934]: lame server resolving '150.199.96.202.in-addr.arpa' (in '199.96.202.in-addr.arpa'?): 211.147.6.4#53
Feb 22 12:44:31 hanon named[11934]:   validating @0xb9201000: 96.202.in-addr.arpa SOA: got insecure response; parent indicates it should be secure
Feb 22 12:44:36 hanon named[11934]:   validating @0xb9201000: 96.202.in-addr.arpa SOA: got insecure response; parent indicates it should be secure
Feb 22 12:44:38 hanon named[11934]:   validating @0xb9201000: 96.202.in-addr.arpa SOA: got insecure response; parent indicates it should be secure
...

lame server resolving というのは、向こうのサーバがちゃんとしていない時に出るらしい。逆引きの時によく見られるようで、下のケースでも逆引きの時に発生している。

validation … got insecure response は DNSSEC の検証ができないということなのかな? 何か同じようなのが連続して大量に出力されているのはちょっと気になるところ。

上の2ケースは発生時間も近いし、同一のネームサーバ上のレコードに関連しているような感じなので、実は一連のエラーなのかもしれない。

とにかく、向こう側の問題のようなので、こちら側で対応する必要はなさそうだが、この類のエラーが頻発するようなら、ログを吐かないように調整する必要があるかも。

Java の実行時エラー

sun6-java を実行するときに、下のようなエラーが出る。

$ /usr/pkg/bin/sun6-java
Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location - find_vma failed
...

/emul/linux/proc が必要らしい。MESSAGE に書いてあった。

$ pkg_info -D sun-jre6
...
In order to be able to run the JVM, you need to add the following line
to your /etc/fstab:
procfs /emul/linux/proc procfs rw,linux
...

BIND9 のエラー (DNSSEC 関連?)

NetBSD を 5.1.2 にアップデートしたところ、システム標準の named.conf に DNSSEC の設定が追加され(cvs で確認すると 5.1.1 RELEASE からのようだ)、デフォルトで DNSSEC が有効になったようだ。

とりあえず、マージして運用してみたが、ログに下のようなエラーが出てくる。

...
named: error (host unreachable) resolving 'dns-a.iij.ad.jp/A/IN': 2001:2f8:0:100::153#53
...

メッセージのうち、ホスト名っぽいところはいろいろ、レコード種別っぽいところは ‘A’ 以外に ‘AAAA’, ‘PTR’, ‘DS’ , ‘DNSKEY’, ‘DLV’ などがある。最後のアドレスらしき箇所は IPv6 形式のみで IPv4 形式の物は見られない。

状況から察するに、IPv6 で接続できなくてエラーになっているのだろう。

このホストは IPv6 unreachable なところに置かれているので、接続できないのはしかたがない。BIND9 の方で IPv6 を使わないように設定するのが妥当だろう。

BIND9 のマニュアルを見たのだが、named.conf の IPv6 関連のオプションは複数あって、今回の問題にはどれが該当するのかがよくわからない。一括で無効にする指定ができるのかどうかもわからなかった。

一方、コマンドラインオプションで ‘-4’ を指定すれば一括で無効にするとかができるということなので、rc.conf に named_flags=”-4″ を追加することにした。

NTPD

ずっと以前から ntpd が、下のようなログを吐いていたのだけれど、時刻の同期はできているようなので放置していた。

...
kernel time sync status change 0x2001<PLL,NANO,MODE=0x0=PLL,CLK=0x0=A>
kernel time sync status change 0x6001<PLL,NANO,MODE=0x1=FLL,CLK=0x0=A>
kernel time sync status change 0x2001<PLL,NANO,MODE=0x0=PLL,CLK=0x0=A>
kernel time sync status change 0x6001<PLL,NANO,MODE=0x1=FLL,CLK=0x0=A>
...

ふと気になったので調べてみると、対処方法があるらしく、server 行に maxpoll 9 を記述すれば良いらしい。
(参考: http://blog.livedoor.jp/dankogai/archives/51686051.html

...
# The option `maxpoll 9' is used to prevent PLL/FLL flipping on FreeBSD.
...

NetBSD の ntpd にも対策として有効かどうか、試してみたらエラーは出なくなった。何かのタイミング的な問題かな?

その他、ntpd の設定の参考になりそうなページ(http://d.hatena.ne.jp/incarose86/20110505/1312522379)を見かけたのでメモがわりに貼っておく。

NetBSD 5.1.2 released

NetBSD 5.1.2 が 2/11 にリリースされていたようだ。

$ cd /home/NetBSD/src
$ cvs -PdAC -r netbsd-5-1-2-RELEASE
$ rm -rf ../obj ../tools
$ ./build.sh -O ../obj -T ../tools -j 5 tools
$ ./build.sh -O ../obj -T ../tools -j 5 kernel=GENERIC
$ ./build.sh -O ../obj -T ../tools -j 5 -U distribution
...
$ sudo rm -f /onetbsd
$ sudo ln /netbsd /onetbsd
$ sudo cp /home/NetBSD/obj/sys/arch/i386/compile/GENERIC/netbsd /nnetbsd
$ sudo mv /nnetbsd /netbsd
$ sudo shutdown -r now
...
$ cd /home/NetBSD/src
$ sudo ./build.sh -O ../obj -T ../tools -U install=/
$ sudo /usr/sbin/etcupdate -s /home/NetBSD/src
...
obsolete check:
Remove obsolete file /usr/lib/libdns.so.1.2
Remove obsolete file /usr/lib/libisc.so.1.2
postinstall checks passed: bluetooth ddbonpanic defaults dhcpcd envsys fontconfig gid hosts iscsi makedev motd mtree named nosa pam periodic pf rc ssh wscons x11 xkb uid varrwho
postinstall checks failed: obsolete
To fix, run:
/usr/sbin/postinstall -s '/home/NetBSD/src' -d / fix obsolete
Note that this may overwrite local changes.
*** All done
$ sudo /usr/sbin/postinstall -s /home/NetBSD/src -d / fix obsolete
Source directory: /home/NetBSD/src
Target directory: /
obsolete fix:
Removed obsolete file /usr/lib/libdns.so.1.2
Removed obsolete file /usr/lib/libisc.so.1.2
postinstall fixes passed: obsolete
postinstall fixes failed:
$ sudo shutdown -r now

CPU: Intel Core i3 530 (2.933GHz)、Memory: 2GB での実行時間。

$ time build.sh -O ../obj -T ../tools -j 5 tools
real    2m56.160s
user    5m29.709s
sys     0m43.047s
$ time ./build.sh -O ../obj -T ../tools -j 5 kernel=GENERIC
real    2m19.472s
user    6m26.590s
sys     0m34.056s
$ time ./build.sh -O ../obj -T ../tools -j 5 -U distribution
real    23m50.679s
user    65m5.661s
sys     9m4.000s
参考

補足

最初、前回 build したときの obj ディレクトリを消去しないで build.sh を実行したところ、distribution の構築の最後の方でエラーになってしまった。 5.1 release の build 時に作成された ../obj/destdir.i386/stand/i386/5.1 が消されずに残っているためらしい(今回新たに作成されるのは ../obj/destdir.i386/stand/i386/5.1.2 というディレクトリ名になっている)。

$ ./build.sh -O ../obj -T ../tools -j 5 -U distribution
(略)
=======  68 extra files in DESTDIR  =========
Files in DESTDIR but missing from flist.
File is obsolete or flist is out of date ?
------------------------------------------
./stand/i386/5.1
./stand/i386/5.1/modules
./stand/i386/5.1/modules/adosfs
./stand/i386/5.1/modules/adosfs/adosfs.kmod
(略)
=========  end of 68 extra files  ===========
*** [checkflist] Error code 1
1 error
(略)
ERROR: Failed to make distribution
*** BUILD ABORTED ***

手で消去して、-u オプション付きで build.sh を実行すれば再コンパイルなしで続行できる。

$ rm -rf ../obj/destdir.i386/stand/i386/5.1
$ ./build.sh -O ../obj -T ../tools -j 5 -U -u distribution