ネットワークインターフェースに alias を追加したとき、Netif は lo0 にならなければいけないのに、インターフェースカードのままになっている。
ifconfig ed0 inet 192.168.xxx.1
ifconfig ed0 inet 192.168.xxx.2 netmask 0xffffffff alias
のときの routing 情報は
192.168.xxx.1 zz:zz:zz:zz:zz:zz UHLW 1 nn lo0
192.168.xxx.2 192.168.xxx.2 UHLW 1 nn lo0 =>
192.168.xxx.2/32 link#1 UC 0 nn ed0
といった具合にならなければいけないのに、
192.168.xxx.1 zz:zz:zz:zz:zz:zz UHLW 1 nn lo0
192.168.xxx.2 192.168.xxx.2 UHLW 1 nn ed0 =>
192.168.xxx.2/32 link#1 UC 0 nn ed0
のようになっている。
別の機械で同様の設定をした場合には正しく設定されているようなので、なにか相性の問題が隠されているのかも。問題の機械でもつい最近までは正しく設定されていたので、起動スクリプトの順番とか、そういったものが関係しているのかもしれない。
とりあえず、routing情報を強制的に書き換えることで対処しているけれど...
ちなみに、トラブルを起こしている際は、
arplookup 192.168.xxx.2 failed: could not allocate llinfo
といったログが大量に発生している。
arp_rtrequest: bad gateway 192.168.xxx.2 (!AF_LINK)
といったログはまだ出続けているので、まだ解決すべき問題が別に残っているらしい。
[追記: 2008/09/04] どうも routed が悪さをしているみたい。
0 件のコメント:
コメントを投稿