2010 年 10 月のよしだむメモ


[最近] [トップ]

2010 年 10 月の事

<< < 2010/10 > >>
Sun Mon Tue Wed Thu Fri Sat
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

2010-10-01 (Fri)

無為な一日

_ 散歩とか。


2010-10-02 (Sat)

無為な一日

_ 散髪とか。


2010-10-03 (Sun)

メールサーバログ解析

_ 9/26〜10/3 のメールサーバのログ解析。 spam 数が増加。

状態メール数
非受信ブロック(Spamassassin)2565
隔離(ClamAV)11
切断398
一時的な失敗6
受信hamと判定ham133
false negative142
ham計275
spamと判定spam899
false positive0
spam計899
受信メール計1174
4154

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India15.59%
Russian Federation10.02%
Ukraine7.04%
United States5.63%
Brazil4.24%

2010-10-04 (Mon)

無為な一日

_ 久しぶりに Java の開発環境を整えたり。


2010-10-05 (Tue)

Ruby

_ mswin64 な ruby 1.9.2p0 で妙な挙動を発見。 unpack した Fixnum が負なのに 0 より大きい。 一度計算すると正常になる。


RUBY_DESCRIPTION  => "ruby 1.9.2p0 (2010-08-18) [x64-mswin64_90]"
a = [-1].pack('L').unpack('L')[0]  => -1
a > 0  => true
a += 0
a > 0  => false

_ ビルドに失敗しているのかと思って,http://www.garbagecollect.jp/ruby/mswin32/ja/ からバイナリをダウンロードして試してみても同じだった。バグなのかな。

_ ところで上記バイナリを Vista x64 で動かすのにずいぶん苦労した。 SideBySide のエラーを吐いて起動しない。MSVCR80.DLL のロードに失敗しているようだ。 しかたないので,適当な manifest ファイルをでっちあげて exe と dll に埋め込んだら動いた。

_ こんな manifest ファイルを作った。


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.VC80.CRT"
            version="8.0.50727.4016" 
            processorArchitecture="amd64" 
            publicKeyToken="1fc8b3b9a1e18e3b"
        />
    </dependentAssembly>
</dependency>
</assembly>

_ こんな感じで埋め込んだ。


bin\
  mt -manifest ruby.manifest -outputresource:ruby.exe;1
  mt -manifest ruby.manifest -outputresource:rubyw.exe;1
  mt -manifest ruby.manifest -outputresource:goruby.exe;1
  mt -manifest ruby.manifest -outputresource:msvcr80-ruby191.dll;2
 
lib\ruby\1.9.1\x64-mswin64_80\
  for /R %i in (*.so) do mt -manifest ruby.manifest -outputresource:%i;2

2010-10-06 (Wed)

Ruby

_ 昨日の問題を試すため,trunk をビルドしてみた。

_ trunk では問題ないことを確認した。


2010-10-07 (Thu)

無為な一日

_ 久しぶりに Windows で C プログラミングをしたり。


2010-10-08 (Fri)

BIND

_ 内部用の DNS キャッシュサーバで DNSSEC を使ってみようとしたら BIND のバージョンが古すぎて駄目だったので, BIND 9.7.2-P2 をインストールしてみることにした。

_ セルフコンパイル環境無しの mipsel マシンなので, i386 の SSD/Linux でクロスコンパイルしてみた。

_ とりあえずクロスで OS をフルビルド。bits/socket.h でエラーが出るが適当に直して続行。


set PATH=$PATH:/usr/cross/mipsel/bin
cd /usr/src
bmake CROSS_BUILD=mipsel OPENBLOCKS=oms400 DESTDIR=/home/yoshidam/dest build

_ 続いて BIND のビルド。


./configure --host mipsel-ssd-linux-gnu \
  --with-openssl=/home/yoshidam/dest/usr \
  --enable-epoll --with-randomdev=/dev/random --disable-atomic \
  --sysconfdir=/etc/namedb --with-libtool \
  CFLAGS=-DDIG_SIGCHASE=1 \
  LDFLAGS="-L/usr/cross/mipsel/mipsel-ssd-linux-gnu/lib -L/home/yoshidam/dest/lib -L/home/yoshidam/dest/lib"\
  BUILD_CC=mipsel-ssd-linux-gnu-gcc 

_ gen の実行で止まるので手動コンパイルしておく


(cd lib/dns ; gcc -I../../lib/isc/include -o gen gen.c)
make
make install DESTDIR=/home/yoshidam/dest

2010-10-09 (Sat)

DNSSEC

_ DNSSEC がうまく動いているかどうか確認するために, ISC DLV レジストリに登録してみた。

_ うまく行っていれば,dig www.yoshidam.net +dnssec とかやると flags に ad が入っているはず。


; <<>> DiG 9.7.2-P2 <<>> www.yoshidam.net +dnssec
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29711
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 3, ADDITIONAL: 1
 
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
...

2010-10-10 (Sun)

DNSSEC

_ DNSSEC は運用が面倒すぎるな。 ゾーンファイルを書き換える度に署名し直す必要があるし, ZSK (ゾーン署名鍵) は一〜三ヶ月ごとに作りなおさなければならないようだ。

_ Smart signing でちょっと楽になるみたいだけど,鍵の生存期間をちゃんと設定しないとうまく運用できないらしい。

_ auto-dnssec を使ってみたけど,ゾーンファイルがばっさり書き換えられてしまう。 これはありえないな。

_ それにしても DNSSEC の検証に失敗すると SERVFAIL になるのは致命的すぎる。 DNSSEC を有効にしたキャッシュサーバからだと www.isc.org が解決できなくなってしまった。

メールサーバログ解析

_ 10/3〜10/10 のメールサーバのログ解析。 spam 数は微増。

状態メール数
非受信ブロック(Spamassassin)2609
隔離(ClamAV)3
切断351
一時的な失敗0
受信hamと判定ham115
false negative368
ham計483
spamと判定spam765
false positive0
spam計765
受信メール計1248
4211

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India 18.76%
Russian Federation11.86%
Ukraine6.70%
United States4.24%
China3.50%

2010-10-11 (Mon)

無為な一日

_ 散歩,ビデオの消化とか。


2010-10-12 (Tue)

DNSSEC

_ いつのまにか www.isc.org が検証成功して正常に引けるようになっていた。 うまくいかなかったのはキャッシュのせいかな。

_ 名前引きが遅くなったせいかタイムアウトエラーが頻発するようになった気がする。


2010-10-13 (Wed)

Unicode Normalization

_ Unicode 6.0 がリリースされたようなので, Unicode Normalization ライブラリのテーブルを作りなおして対応。

_ あと合成アルゴリズムが初期の UTR15 のままだったので, 現在のアルゴリズムに修正。 NormalizationTest.txt が通るようになったはず。


2010-10-14 (Thu)

無為な一日

_ 月例 Windows Update がようやく完了。 今月はずいぶん大きかったな。


2010-10-15 (Fri)

無為な一日

_ 散歩とか。


2010-10-16 (Sat)

無為な一日

_ ゲームとか。


2010-10-17 (Sun)

Solaris

_ Solaris 10 9/10 (update 9) をインストールしてみた。

_ ダウンロードは SDC じゃなく OTN のアカウントが必要になってるな。

_ ライセンスが OTN ライセンスに変更されたのか。 開発用途以外では 30 日間の試用のみが許されている。 他の Oracle 製品同様,GPL プログラムとの結合が禁止された。 Oracle Solaris Studio のコンパイラも同じライセンスになったから, Solaris 上で GPL のプログラムの開発は不可能だな。

_ 中身は一部 Oracle Solaris と変わっっているみたいだが, まだところどころ Sun という名前が残っている。


2010-10-18 (Mon)

メールサーバログ解析

_ 10/10〜10/17 のメールサーバのログ解析。 spam 数が減った。

状態メール数
非受信ブロック(Spamassassin)1768
隔離(ClamAV)2
切断244
一時的な失敗5
受信hamと判定ham142
false negative278
ham計420
spamと判定spam712
false positive1
spam計713
受信メール計1133
3152

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India15.28%
Russian Federation12.90%
Ukraine6.61%
United States4.47%
China4.03%

2010-10-19 (Tue)

無為な一日

_ ビデオの消化とか。


2010-10-20 (Wed)

無為な一日

_ ビデオの消化とか。


2010-10-21 (Thu)

Ruby

_ Ruby プログラムの標準出力,標準エラー出力を Windows のコマンドプロンプトで Unicode 出力してしまうライブラリ。 出力先がリダイレクトされた場合,UTF-8 で出力する。

_ 例えばこんなプログラムで,


#! ruby
# -*- coding: UTF-8 -*-
 
require 'Win32Console'
 
s1 = "こんにちは"
s2 = "\u{9dd7}\u{5916}\u{20b9f}\u{308b}"
 
puts s1
puts s2

_ こんな感じの出力になる。

_ [Win32Console]

_ CP932 には無い U+9DD7 もコマンドプロンプトで表示可能。 リダイレクトでファイルに出力してメモ帳で開くと, コマンドプロンプトでは表示できない U+20B9F もちゃんと出力されている。

_ Ruby 1.8/1.9 対応。 Ruby 1.8 の場合,文字列は全て UTF-8 にそろえる必要がある。


2010-10-22 (Fri)

無為な一日

_ ビデオの消化とか。


2010-10-23 (Sat)

無為な一日

_ ビデオの消化とか。


2010-10-24 (Sun)

メールサーバログ解析

_ 10/17〜10/24 のメールサーバのログ解析。 spam 数が再び増加。

状態メール数
非受信ブロック(Spamassassin)2459
隔離(ClamAV)3
切断241
一時的な失敗0
受信hamと判定ham139
false negative226
ham計365
spamと判定spam951
false positive0
spam計951
受信メール計1316
4019

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India18.42%
Russian Federation12.70%
Ukraine7.30%
China4.02%
Brazil3.43%

2010-10-25 (Mon)

無為な一日

_ ビデオの消化とか。


2010-10-26 (Tue)

Ruby

_ Ruby プログラムの標準出力,標準エラー出力を Windows のコマンドプロンプトで Unicode 出力してしまうライブラリに irb で Unicode を入力する機能を追加。 その他,ASCII-8BIT で出力すると落ちる問題などを修正。

_ こんな感じ。

_ [Win32Console02]

_ 入力された文字列は UTF-8 になる。また,readline は殺される。


2010-10-27 (Wed)

無為な一日

_ 散歩とか。


2010-10-28 (Thu)

無為な一日

_ ビデオの消化とか。


2010-10-29 (Fri)

無為な一日

_ ビデオの消化とか。


2010-10-30 (Sat)

Ruby

_ Windows のコマンドラインから Ruby プログラムに Unicode で引数を渡すライブラリを作ってみた。Ruby 1.9/1.8 対応。

_ get_argv はワイルドカード展開無し,get_argv_expand は展開あり。 返値は UTF-8 文字列の配列。

_ コマンドライン解釈やワイルドカード文字は Windows 標準なので, Ruby の ARGV とは結果が異なる。


#! ruby
 
require 'Win32Argv'
require 'Win32Console'
 
p ARGV
p Win32Argv.get_argv
p Win32Argv.get_argv_expand

_ [Win32Argv]

_ Ruby 1.9 の open は Unicode ファイル名に対応しているけど, Ruby 1.8 は対応していないようなのでファイル名展開してもあまりうれしくないかも。


2010-10-31 (Sun)

メールサーバログ解析

_ 10/24〜10/31 のメールサーバのログ解析。 spam 数は減少。

状態メール数
非受信ブロック(Spamassassin)1751
隔離(ClamAV)9
切断281
一時的な失敗0
受信hamと判定ham145
false negative301
ham計446
spamと判定spam580
false positive0
spam計580
受信メール計1026
3067

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India19.26%
Russian Federation11.11%
Ukraine6.35%
China4.85%
United States3.90%

Ganerated by nDiary version 0.9.4
Yoshida Masato (yoshidam@yoshidam.net)