AironetのMBSSID設定方法

久々に Aironet をきちんとMBSSIDにて設定した。公式の設定例を見ながらだいたいできたのだけど、最後の最後でひとつうまく行かないことがあって、40分くらいはそれで浪費してしまった。

学生のころはこんなもんだろと思っていた設定が、今となってみるとずいぶん不合理に見えてきて、「どこに何が必要か」について把握するのが難しいと感じるのは自分の能力不足とか以上にその設定が分かりにくいからだ、そしてその設定を筋を通して説明するページがないからだ、という考えに至ったので、今回行った設定の考え方をなんとなく記録として残しておく。

無線を落とす

AP をつけたとき、最初にすべきことは、コマンドを打っている最中も容赦なく出力されてくるエラーメッセージを黙らせること。無線を止めることで実現できる。

en
conf t
int dot11 0
shut
int dot11 1
shut
do wr mem

do wr mem は非常にお行儀が悪いけど、消えるよりゃマシだろまぁ。do で書き込むなという話もあるし、いまの推奨は copy running-config startup-config だっけ。

VLANとサブインターフェイス

通常、Aironet の AP にはイーサの口は一つだけ。なので、そこには Tagged VLAN を食わせて MBSSID 対応していくことになる。

その口が interface fa 0 だとしたら、中で利用したいVLAN番号に応じたサブインターフェイスを作っていく。 今回の例では、42は(すべての答えだから)管理用セグメント、398は(サンキュッパで安そうだから)ユーザセグメント。

interface FastEthernet0.42
 encapsulation dot1Q 42
!
interface FastEthernet0.398
 encapsulation dot1Q 398
!

無線の方も、イーサと同様にサブインターフェイスを作る。

interface Dot11Radio0.398
 encapsulation dot1Q 398
!

ブリッジする

実はAironetは、VLANを決めただけでは通信が通るようにはなっていない*1。通信を通したいインターフェイス同士を、同じ「ブリッジグループ」に含める必要がある。

先ほどの二つのインターフェイスを、 bridge-group でまとめる。

interface FastEthernet0.42
 encapsulation dot1Q 42
 bridge-group 2
!
interface FastEthernet0.398
 encapsulation dot1Q 398
 bridge-group 3
!
interface Dot11Radio0.398
 encapsulation dot1Q 398
 bridge-group 3
!

VLANと違い、bridge-groupは1-255くらいまでしか設定できないので、VLANと同じ番号は使えない。VLAN番号の末尾や先頭などにちなんだ、分かりやすいものを選んでおくとよい。 Aironet 本体へ telnet/ssh するために使用する BVI (Bridge Virtual Interface) はデフォルトではVLAN番号 1 上のネットワークに勝手につながるのだけど、それ以外を利用する場合は bridge-group を設定した、ような気がする。

interface BVI 1
 ip address 192.168.0.2 255.255.255.0
 bridge-group 2
!

VLAN と bridge-group と BVI との関係は、 http://packetlife.net/blog/2012/feb/20/aironet-aps-bridge-groups-and-bvi/ の図がわかりやすい。

SSID の設定をする

Aironet の SSID の設定の仕方には歴史があり、昔は SSID を一つしか設定できなかった。その名残りがあるので、SSIDの設定をするときは、以下のような困ったことが起きることがある。

  • 設定の順序を間違えると入らなくなる設定がある
  • ググって出てきた情報が間違っている
  • タブ補完でそれっぽい設定を探しても、それがまったく意味のない設定
  • タブ補完が効かない(あるいは、タブ補完は効くが、コマンド途中の入力は受け付けられない)
  • あとでコンフィグ見るとそこだけインデントが違う

わりとまじでよくある。だるい。

さて、SSIDを設定するにあたって設定する順番は、だいたい以下の通り:

  1. MBSSID(マルチBSSID)宣言をする
  2. SSIDの設定をする
  3. SSIDをVLANに紐付ける
  4. 無線インターフェイスに、VLANごとの暗号化方式を設定する
  5. 無線インターフェイスに、出力するSSIDを宣言する

それぞれについて、以下で説明していく。

MBSSID 宣言

(conf) dot11 mbssid

元来はインターフェイスごとに mbssid を宣言する必要があった。グローバルな設定として宣言しておくと、インターフェイスに書く必要がなくなる。

SSID の設定をする

dot11 ssid GuestUser398
   vlan 1
   authentication open
   authentication key-management wpa version 2
   mbssid guest-mode
   wpa-psk ascii 7 XXXXXXXXXXX
!

特に言うことはないけれど、

  • RADIUS 使わない限りは authentication open はほぼ固定設定
  • WPA2 を利用するとここで宣言しておく
  • WPA2-PSK で認証する場合、ここで wpa-psk とパスワードを入力する。ユーザが接続するときに利用するやつはここで入力する
  • mbssid guest-mode は、まあ、mbssid でかつ guest-mode(SSIDを広報する)ということ。色気を出して guest-mode を消すとかはしないほうがいい。セキュリティが悪化する

そして VLAN を設定。Aironet的には、SSIDはVLANに所属するものになっている。これ大事なポイント。テストに出る。

無線インターフェイスにVLANごとの暗号化方式を設定する

このあたりがどうにも気持ち悪くて、全然覚えられない。なんか筋が通った話はあるんだろうか…。Cisco公式ドキュメントを熟読しないと…。

先ほどは SSID ごとにパスフレーズを設定し、その SSID は VLAN に紐付いていた。 ここでは、無線インターフェイスの VLAN ごとに、通信路の暗号化に利用する方式(AES or TKIP)を設定する。

interface Dot11Radio0
 encryption vlan 398 mode ciphers aes-ccm
 !
 shutdown
!
interface Dot11Radio1
 encryption vlan 398 mode ciphers aes-ccm
 !
 shutdown
!

TKIPの場合は encryption vlan 398 mode ciphers aes-ccm tkip とする。まあいまどきTKIP必須とかないだろうけど。

ここでの注意点は、設定を入れるDot11Radioのインターフェイスがサブじゃないということ。せっかくサブインターフェイスを作ったのに悪いけどさ、あれは bridge-group しか設定しないんだわ。おかしいだろ常識的に考えて…だがこれが現実…。

さて。これで準備は万端だ。あとは数コマンドだけ。

無線インターフェイスSSID を設定する

ところで、無線インターフェイスDot11Radio0Dot11Radio1 とに分かれているのは、 0 が 2.4GHz帯で 1 が 5GHz帯のインターフェイスになっている、というところにある。

インターフェイスごとつまり周波数帯ごとに、吹きたいSSIDが変わってくることがある。 最近だと、SSIDの末尾に -a をつけたものを 5GHz帯に、 -g をつけたものを 2.4GHz帯に、なんてことがよくある。 これは無線インターフェイスごとに別々の SSID を設定していくことで実現可能なわけ。

今回、 GuestUser398 という SSID を 2.4GHz 5GHz 両方に設定するのであれば、以下のような設定をする。

interface Dot11Radio0
 encryption vlan 398 mode ciphers aes-ccm
 !
 ssid GuestUser398
 shutdown
!
interface Dot11Radio1
 encryption vlan 398 mode ciphers aes-ccm
 !
 ssid GuestUser398
 shutdown
!

設定が完了したら、interface の shutdown を外そう。

int dot 0
no shut
int dot 1
no shut

no shutdown すると、Aironetが無線を発し始める。周りの無線のスキャンを行うので、起動までは少し時間がかかることになる。

数十秒ほどして、ランプが緑色になったら、APが準備完了したしるしだ。接続テストをしよう。繋がったら Assoc したとシリアル画面へとログ出力されるし、ランプも青色へと変化する。

以上

まっとうな運用をするのであればもっと色々と設定することはあるけれど、まずは以上の設定を行い SSID を確認できてからでないと話は始まらない。とりあえず Cisco の考え方に身を染めていこう。人間、あきらめが肝心だ。

*1:このへんはルータと考え方が一緒