LoginSignup
2
2

More than 5 years have passed since last update.

北大の学内 wifi (elms-g) への接続を自動化する.(新字新かな)

Posted at

北大の図書館や一部の校舎では,学内 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 を利用できる.便利である.

2
2
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
2
2