コンピウタめも †
afio / cpio †
でかくなりすぎたログが開けない時 †
split †
usage: split [-a sufflen] [-b byte_count] [-l line_count] [-p pattern]
[file [prefix]]
name server のバージョンを調べる問い合わせコマンド †
dig @server_addr chaos txt version.bind
FreeBSDのコンソールでキーリピートを速くしたい †
kbdcontrol < /dev/ttyv0 -r fast
WindowMakerのMozillaでkinput2を起動するとフォーカスを持って行かれる †
メニューを開いて「属性」「アドバンストオプション」「フォーカスしない」にチェック。以降絶対にフォーカスされなくなるので再びメニューを開くこともできなくなる。(やりかたわからん)
FFFTP使用時にディレクトリ一覧取得に失敗する †
- 原因: ftp接続後 ls コマンドによるリストのフォーマットがFFFTPで解釈できなかった。
何故リストのフォーマットが変わったのか。 †
ftpdはリスト取得に /bin/ls -Al コマンドを発行している雰囲気で、lsコマンドは -l オプションでは環境変数 LANG の値によって出力フォーマットを変えるという曲芸を持っている。
今回はftpdの親プロセス inetd の環境変数が LANG=ja_JP.EUC になっていたため、通常
-rw-r--r-- 1 tsutomu users 126103 Aug 15 2002 rfc1034.txt
-rw-r--r-- 1 tsutomu users 122549 Aug 15 2002 rfc1035.txt
-rw-r--r-- 1 tsutomu users 46996 Dec 13 12:20 rfc1939.txt
-rw-r--r-- 1 tsutomu users 93467 Feb 24 2002 rfc821-ja.txt
-rw-r--r-- 1 tsutomu users 120432 Oct 18 1991 rfc821.txt
-rw-r--r-- 1 tsutomu users 92248 Mar 27 2001 rfc821j.txt
と応答するべき所を
-rw-r--r-- 1 tsutomu users 126103 8/15 2002 rfc1034.txt
-rw-r--r-- 1 tsutomu users 122549 8/15 2002 rfc1035.txt
-rw-r--r-- 1 tsutomu users 46996 12/13 12:20 rfc1939.txt
-rw-r--r-- 1 tsutomu users 93467 2/24 2002 rfc821-ja.txt
-rw-r--r-- 1 tsutomu users 120432 10/18 1991 rfc821.txt
-rw-r--r-- 1 tsutomu users 92248 3/27 2001 rfc821j.txt
と応答していたためFFFTPは解釈できなかった模様。
通常 inetd は rc.conf から起動するため LANG に日本語指定される事は無いのだが手動で停止、再起動したときの環境変数が引き継がれてしまっていた模様。
どうやって治した? †
# setenv LANG en
# kill -TERM `cat /var/run/inetd.pid`
# /usr/sbin/inetd -wW
で無事解決。
IEのプロキシ自動設定 †
IEのツール>インターネットオプション>接続>LANの設定>設定を自動的に検出する にチェックを入れるとプロキシサーバーの設定を自動で探しに行く。
探しに行くホストは所属ドメインのwpadと言う名前のマシンで、HTTPで /wpad.dat というファイルを取得しにいく。
wpad.datの中身 †
wpad.dat自体はJavascriptで記述する。以下のように記述すると記述順に接続を試していき、最終的にはダイレクトで接続させる事ができるらしい。
function FindProxyForURL(url, host)
{
return "PROXY 123.45.67.89:10080 ; PROXY 123.45.67.90:3080 ;DIRECT";
}
WindowsがIPアドレス取得時にDNSアップデートをかける話 †
症状 †
WindowsのIPアドレスを手動で設定、もしくはDHCPで設定したときにこのようなアクセスが発生する。
192.168.12.100 -> 192.175.48.1 DNS Dynamic update SOA 168.192.in-addr.arpa
192.175.48.1 -> 192.168.12.100 DNS Dynamic update response, Refused CNAME 100.12.168.192.in-addr.arpa
ドメイン名にホスト名をつけてIPアドレスの逆引きを登録しようとする。しかも外部であるprisoner.iana.orgにである。これはなんなのだろう。
原因 †
Windows2000、XPはTCP/IPの設定で「この接続のアドレスをDNSに登録する」がデフォルトになっているため、IPを取得するとDNSに対して登録しようとする。どこに登録するかというと 168.192.in-addr.arpa であり、ローカルDNSが明示的に設定していない場合デフォルトでここのNSは IANA を向いているという落ち。
何故プライベートであるはずのレコードがIANAを向いているかといえば、その昔IANAはプライベートアドレスの逆引きを担当していたらしい。しかしプライベートであるアドレスをインターネットでネーム解決するのはおかしいだろう、という事になり現在はやっていないらしい。その時の名残という話。しかしDNSサーバーで逆引きNSが割り当てられていないというのはまずいらしく、現在でもデフォルトではIANAを向いているが運用するときにきちんと設定しましょう、という事らしい。
実際に ns-wide.wide.ad.jp, ns1.mesh.ad.jp, dns0.iij.ad.jp などはIANAを指している。
> nslookup -query=ns 168.192.in-addr.arpa ns-wide.wide.ad.jp
Server: ns-wide.wide.ad.jp
Address: 203.178.136.36
Non-authoritative answer:
168.192.in-addr.arpa nameserver = blackhole-1.iana.org
168.192.in-addr.arpa nameserver = blackhole-2.iana.org
Authoritative answers can be found from:
blackhole-1.iana.org internet address = 192.175.48.6
blackhole-2.iana.org internet address = 192.175.48.42
Yamahaより。
プライベートアドレスを持ったホストは本来インターネット上には存在してはいけないものなので、それに対するネームサーバも存在はしません。しかしながら、間違ってプライベートアドレスを逆引きするホストが出てきた場合のために、BLACKHOLEが存在します。つまり、ネットワーク設計上の不備(DNSサーバの不備)を通知してくれる、とても善意なDNSサーバです。
対策 †
- DDNSが不要ならWindows側でアップデートパケットを送信させない。
- そもそもDNSサーバーをきちんと設定する。
資料 †