LoginSignup
3
3

More than 5 years have passed since last update.

北大の學内 wifi (elms-g) への接續を自動化する.

Last updated at Posted at 2014-11-19

北大の圖書館や一部の校舎では,學内 wifi (elms-g) を利用できる.本稿ではこれへの接續を自動化する方法を書く.

私は wifi への接續に wicd-cli を使つてゐる.本稿に登場する option の意味をあらかじめ書いておくと,

wicd-cli -h
-n NETWORK, --network=NETWORK
-p NETWORK_PROPERTY, --network-property=NETWORK_PROPERTY
-S, --scan
-l, --list-networks
-c, --connect
-y, --wireless

のとほりである.

elms-g の飛んでゐる場所で

$ wicd-cli -ySl

とすると,

#   BSSID           Channel ESSID
0   00:1D:73:C2:AB:50   1   elms-g
1   00:1D:73:C2:AB:53   1   eduroam
2   00:1D:73:C2:AB:52   1   elms-x

のやうに表示される.

次いで,

$ wicd-cli -ycpelms-g

としてやれば,elms-g としてやれば,elms-g に接續できる.實は,

$ wicd-cli -ySl

の手順は不要である.當該の場所に着いて PC を開いたら,即坐に

$ wicd-cli -ycpelms-g

としてやれば,elms-g に接續できる.

このやうにして快適な elms-g 生活をしてきたが,error が出てうまくいかないことがあると氣づいた.さういふときに

$ wicd-cli -ySl

としてやると,

#   BSSID           Channel ESSID
0   10:6F:3F:E5:C6:C3   1   eduroam
1   10:6F:3F:E5:C6:C0   1   elms-g
2   10:6F:3F:E5:C6:C2   1   elms-x
3   00:1D:73:F8:D4:30   6   elms-g
4   00:1D:73:F8:D4:32   6   elms-x

のやうに表示される.どうやら,"elms-g" と名乘る電波が複數あつて,wicd-cli に "elms-g" と指定してやつたのではどの電波なのか同定できない,といふのが原因のやうだ.ならば,番號で指定してやらう.

$ wicd-cli -ycn1

としてやつたら無事に接續できた.

elms-g の番號を調べる → その番號で接續する

の流れを自動化してやらうと思ひ,下のやうに script を書いた:

connect_elms-g.rb
wave_list = `wicd-cli -ySl`
wave_list.each_line do |line|
  if line.match(/elms-g/) then
    $num = line.split("\t")[0]
  end
end

command = "wicd-cli -ycn" + $num
system(command)

elms-g と名乘る電波の番號を取得して,そのうち最も大きいものを $num に格納して,その番號の電波に接續する,といふ script である.

elms-g に接續したあと,LAN への login が必要になる.これを自動化する方法は

北大の wifi への login を自動化

に記した.私は .zshrc に

alias wie='ruby $HOME/connect_elms-g.rb; ruby $HOME/elms-g_login.rb'

と書いてあるので,圖書館等で PC を開いたら

$ wie

とすることですぐに net を利用できる.便利である.

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3