net-snmp 5.1.2-6vd1, etc.
_ [debian] net-snmp 5.1.2-6vd1
[ 942155 ] IPv6 addr_string fix はまだ入っていないので、vd_net-snmp-5.1.1_ipv6-libwrap-fix.patch を当てて作成。
_ [debian] AP ごとの無線 LAN の設定
アクセスポイント毎の無線LANの設定、10.8 魔法のようなネットワーク設定 を参考にやってみる。アクセスポイント毎の無線LANの設定 に示されている map-wlan スクリプトに若干手を加える。かなり決め打ちかついい加減。
- 有線でも使っているので、eth0 が UP していれば WIRED を返す。
-
iwlist ath0 scanning で
Interface doesn't support scanning : Invalid argument
となってしまう。調べてみると ath0 を UP しておかないと駄目なようだ。
- AP が見つからなかったら NOAP を返す。
という修正を加えたスクリプトがこれ。
#!/usr/bin/ruby
# http://shugo.net/jit/20040101.html#p02
#
result = `/sbin/ifconfig eth0 | grep "inet addr"`
if( result != '' )
puts('WIRED')
exit
end
`/sbin/ifconfig ath0 up`
#
iface = ARGV.shift
result = `iwlist \#{iface} scanning`
#
if( result =~ /No scan results/ )
puts('NOAP')
exit
end
#
while line = gets
essid, name = line.split
if /ESSID:"\#{Regexp.quote(essid)}"/ =~ result
puts(name)
exit
end
end
で、/etc/network/interfaces にエントリを追加。
auto ath0
mapping ath0
script /usr/local/sbin/shugo-map-wlan.rb
map XXXXXXXXXX ath0-XXXXX
map YYYYYYYYYY ath0-YYYYY
iface ath0-XXXXX inet static
wireless_essid XXXXXXXXXX
wireless_key s:XXXXXXXXXX
address XXX.XXX.XXX.XXX
netmask XXX.XXX.XXX.XXX
broadcast XXX.XXX.XXX.XXX
gateway XXX.XXX.XXX.XXX
iface ath0-YYYYY inet dhcp
wireless_essid YYYYYYYYYY
WIRED と NOAP が返ってきたときは何もしない。 ひとまず有線の状態ではきちんと動作した。 無線の状態でテスト。eth0 が UP しているかどうかの調べ方がまずかった。UP フラグがあるかどうかではなく、inet addr が振られているかどうかを調べるように変更。ついでに負荷実験をしてみた。数 G のファイルを流してみたが、kernel が刺さったりすることはなく普通に使えた。