Posted on Mon Dec 22 20:13:02 +0900 2008 by nabeken
Broadcom の STA ドライバ環境下だと、インターフェース起動時にIPv6アドレスが設定されない事象が発生した。問題は起動時に RS (Router Solicitation) を投げるも、初回数回はかならず失敗するためであった。
この初回数回が運悪く、デフォルト3回以上であるため、デフォルトの設定だと起動時に正しくアドレスが設定されないことになる。
問題は起動時の RS 試行回数をデフォルトの3から10に変えることで解消された。
# echo 10 > /proc/sys/net/ipv6/conf/${IFACE}/router_solicitations
IFACEはeth1, wlan0 など具体的なインターフェース名である。
または、 /etc/sysctl.conf でも構わない。ただし、IF起動直前にきちんと実行される必要がある。
最初の数回は失敗し、5度目あたりのRSでようやくRAが返ってきている。デフォルトの3回ではRAが返ってこないのもうなずける。なお、有線や zd1211rw ドライバであれば何の問題もないため、やはりドライバに何らかの問題があると考える。