
Ubuntu日本語フォーラム
ログインしていません。
過去にも同じ様な質問があった様ですが解決を見ない状態であり、少し内容が違う様なので質問します。
os: ubuntu 12.04 LTS server
無線LAN : AtermWL54SC
wpa_supplicantにてwpa-psk接続
$sudo lspci 02:00.0
02:00.0 Ethernet controller [0200]: Atheros Communications Inc. AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] [168c:001b] (rev 01) Subsystem: NEC Corporation Device [1033:82f9] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 168 (2500ns min, 7000ns max), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 11 Region 0: Memory at 1c000000 (32-bit, non-prefetchable) [size=64K] Capabilities: [44] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=2 PME- Kernel driver in use: ath5k Kernel modules: ath5k
$iwconfig
wlan0 IEEE 802.11bg ESSID:"xxxxxxxxx" Mode:Managed Frequency:2.472 GHz Access Point: xx:xx:xx:xx:xx:xx Bit Rate=24 Mb/s Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Power Management:off Link Quality=47/70 Signal level=-63 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:1 Invalid misc:5194 Missed beacon:0
$lshw
*-network description: Wireless interface product: AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] vendor: Atheros Communications Inc. physical id: 1 bus info: pci@0000:02:00.0 logical name: wlan0 version: 01 serial: xx:xx:xx:xx:xx:xx width: 32 bits clock: 33MHz capabilities: pm bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=ath5k driverversion=3.2.0-25-generic-pae firmware=N/A ip=192.168.0.3 latency=168 link=yes maxlatency=28 mingnt=10 multicast=yes wireless=IEEE 802.11bg resources: irq:11 memory:1c000000-1c00ffff
上記の様に802.11gで問題なく接続できています。
しかし、802.11aへの無線モードの変更方法が解らず困っております。
Windowsでは802.11aでも使用できるのですが・・・
lspciでは802.11abgでiwconfigやlshwでは802.11bgなので、モードを変更する為に以下のコマンドを使いましたが変更できません。
$iwpriv wlan0 get_mode wlan0 no private ioctls. $iwpriv wlan0 mode 11a wlan0 no private ioctls. $iwpriv wlan0 network_type a wlan0 no private ioctls.
modinfo ath5kではモード変更に関するパラメーター等は無い様です。
他に変更する方法があるのでしょうか?
こんばんは。
右上のインジケーター部分の無線LANマークをクリックすると、2つの接続が見えませんか?
普通は異なった親機として認識されていると思いますが。
私はワープスター(NEC)を使っていますので、
WARPSTAR-○○○〇〇-Aが5Gz、WARPSTAR-〇〇〇〇○-Gが2.4Gzです。
(SSIDをどう設定するかですが、私はデフォルトで使っています。)
オフライン
funatogawa様、アドバイスありごとうございます。
こちらの説明が少し足りなかった所もあるので、環境を説明します。
まずアクセスポイントは802.11a(w52限定)と802.11g/bの混在ができません。
必ずどちらか一方でしか動作しない仕様です。
その為にSSIDやWPAキーも一つしか設定できません。
そして、WL54SCはクライアントとしてPCに接続して使っています。
この状態で、アクセスポイントが802.11b/gで動作している時はWindowsでもubuntuでも問題なく接続できています。
しかしアクセスポイントを802.11a(w52限定)に変更して動作させるとWindows側では問題なく接続できますが、ubuntuでは質問しました様に5Ghz系に変更する方法が解らないのです。
自動でビーコンを捕らえて繋がってくれれば問題ないのですが、802.11b/gに固定されてしまっている感じになっています。
iwlist wlan0 scanを実施しても2Ghz系のアクセスポイントしか見えてきません。
ubuntuのデスクトップ環境ではまだ確認していないので確認してみます。
ubuntu 12.04 LTS RemixをインストールしたPCで試してみましたが、やはり5Ghz系で接続できませんでした。
ネットで色々検索してみましたが、そもそもath5kのドライバで11aに接続できた例がヒットしません。
11aを試してる人がいないだけかもしれませんが・・・・
windowsでは繋がるのでハード的な物ではなくドライバ側のバグ?仕様?なのかもしれませんね。
ndiswrapper等の手もあるようなので、そちらでもやってみたいと思います。
進展がありましたらここの記述したいと思います。
カントリーコードを指定してやれば、もしかするとスキャンできるかもしれません。
$ sudo apt-get update
$ sudo apt-get install iw --ツールのインストール
$ iw --iwのhelp
$ iw list --wlanの変更前の状態の確認
(もしくは $ iw phy0 info)
$ iw reg get --変更前の状態の確認
country 00:
(2402 - 2472 @ 40), (3, 20)
(2457 - 2482 @ 20), (3, 20), PASSIVE-SCAN, NO-IBSS
(2474 - 2494 @ 20), (3, 20), NO-OFDM, PASSIVE-SCAN, NO-IBSS
(5170 - 5250 @ 40), (3, 20), PASSIVE-SCAN, NO-IBSS
(5735 - 5835 @ 40), (3, 20), PASSIVE-SCAN, NO-IBSS
$ sudo iw reg set JP --カントリーコードの変更
$ iw list --wlanの変更後の状態の確認
$ iw reg get --変更後の状態の確認
country JP:
(2402 - 2472 @ 40), (N/A, 20)
(2457 - 2482 @ 20), (N/A, 20)
(2474 - 2494 @ 20), (N/A, 20), NO-OFDM
(4910 - 4930 @ 10), (N/A, 23)
(4910 - 4990 @ 40), (N/A, 23)
(4930 - 4950 @ 10), (N/A, 23)
(5030 - 5045 @ 10), (N/A, 23)
(5030 - 5090 @ 40), (N/A, 23)
(5050 - 5060 @ 10), (N/A, 23)
(5170 - 5250 @ 40), (N/A, 20)
(5250 - 5330 @ 40), (N/A, 20), DFS
(5490 - 5710 @ 40), (N/A, 23), DFS
$ sudo iw wlan0 scan --scan
scan出来る様なら、/usr/share/doc/wpasupplicant/以下のdocを参考に
/etc/wpa_supplicant/wpa_supplicant.confに
country=JP
を追記してみる。
特に $ iw list ($ iw phy0 info)の出力に変化があったかどうか確認してみて、
変化がなければ、ドライバ側の不具合かもしれません。
オフライン
udooonさん 情報ありがとうございます。
こちらでもraguratory domainを確認していますが、しっかりとJPとなっていました。
iwを使って他に変更すれば問題無く変更されます。
しかしath5kではカントリーコードがJPになっても2.4Ghz系しかアップデートされず5Ghz系が無視されています。
dmesgで出力を見るとstart freqやend freqは5Ghzまでリストされますが、実際にアップデートされるのが2.4Ghzのみと言う現状です。
カントリーコードはJPになっている。
Regulatory domain changed to country: JP [ 63.904800] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) [ 63.904804] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 63.904808] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz), (N/A, 2000 mBm) [ 63.904812] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm) [ 63.904816] cfg80211: (4910000 KHz - 4930000 KHz @ 10000 KHz), (N/A, 2300 mBm) [ 63.904820] cfg80211: (4910000 KHz - 4990000 KHz @ 40000 KHz), (N/A, 2300 mBm) [ 63.904824] cfg80211: (4930000 KHz - 4950000 KHz @ 10000 KHz), (N/A, 2300 mBm) [ 63.904828] cfg80211: (5030000 KHz - 5045000 KHz @ 10000 KHz), (N/A, 2300 mBm) [ 63.904832] cfg80211: (5030000 KHz - 5090000 KHz @ 40000 KHz), (N/A, 2300 mBm) [ 63.904835] cfg80211: (5050000 KHz - 5060000 KHz @ 10000 KHz), (N/A, 2300 mBm) [ 63.904839] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 63.904843] cfg80211: (5250000 KHz - 5330000 KHz @ 40000 KHz), (N/A, 2000 mBm) [ 63.904847] cfg80211: (5490000 KHz - 5710000 KHz @ 40000 KHz), (N/A, 2300 mBm)
しかしアップデートされるのは2Ghz系のみ
[ 7991.048896] cfg80211: Updating information on frequency 2412 MHz for a 20 MHz width channel with regulatory rule: [ 7991.048910] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.048918] cfg80211: Updating information on frequency 2417 MHz for a 20 MHz width channel with regulatory rule: [ 7991.048928] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.048935] cfg80211: Updating information on frequency 2422 MHz for a 20 MHz width channel with regulatory rule: [ 7991.048943] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.048951] cfg80211: Updating information on frequency 2427 MHz for a 20 MHz width channel with regulatory rule: [ 7991.048959] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.048966] cfg80211: Updating information on frequency 2432 MHz for a 20 MHz width channel with regulatory rule: [ 7991.048975] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.048982] cfg80211: Updating information on frequency 2437 MHz for a 20 MHz width channel with regulatory rule: [ 7991.048991] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.048998] cfg80211: Updating information on frequency 2442 MHz for a 20 MHz width channel with regulatory rule: [ 7991.049007] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.049014] cfg80211: Updating information on frequency 2447 MHz for a 20 MHz width channel with regulatory rule: [ 7991.049022] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.049029] cfg80211: Updating information on frequency 2452 MHz for a 20 MHz width channel with regulatory rule: [ 7991.049038] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.049045] cfg80211: Updating information on frequency 2457 MHz for a 20 MHz width channel with regulatory rule: [ 7991.049054] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.049061] cfg80211: Updating information on frequency 2462 MHz for a 20 MHz width channel with regulatory rule: [ 7991.049070] cfg80211: 2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A mBi, 2000 mBm) [ 7991.049077] cfg80211: Updating information on frequency 2467 MHz for a 20 MHz width channel with regulatory rule: [ 7991.049086] cfg80211: 2457000 KHz - 2482000 KHz @ 20000 KHz), (N/A mBi, 2000 mBm) [ 7991.049092] cfg80211: Updating information on frequency 2472 MHz for a 20 MHz width channel with regulatory rule:
cfg80211モジュールにはカントリーコードを変更する物と一部周波数をdisableにするオプションしかありません。
* 他ドライバで試した結果報告
os: ubuntu 12.04 LTS server
無線LAN: AtermWL54SC 型番: PA-WL/54SC [802.11a(J52,W52,W53)/b/g 対応]
lspci: Atheros Communications Inc. AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] [168c:001b] (rev 01)
PCに接続し、クライアントとして使用
* 標準ではath5kで動作するが、802.11a(5Ghz)が動作しない。
iwconfig, iwlist, iwpriv, iw等のwireless LAN toolを使用しても無線のモード(802.11a/b/g)を変更できない。
iwconfigでは802.11b/gと表示され、iwlistでchannelを確認すると802.11b/gのCH1〜CH14(2.4Ghz)までしかリストされない。
ath5k, cfg80211のモジュールパラメーターを確認しても、無線モードに関するパラメーターは無い。
* ndiswrapperでWindowsのドライバーを試してみる。
但し、INFファイルが2つ存在し、そのままではどちらを使ってもインストールできない。
2つのINFファイルを結合し、共通項目とWL54SC関連以外の記述をすべて削除してインストール可能となる。
標準ではndiswrapperのカーネルモジュールが存在しないので、module-assistantで作成。
個々の設定をしてハードウェアは認識したが、接続が確立できませんでした。
INFファイルを編集しないとインストールできないのでそれが悪かった可能性も否定できません。
apt-get autoremoveで全て削除し戻す。
* madwifiを試してみる。
madwifi-0.10系はkernelの問題でmakeエラーが出るため断念。
安定版の0.9系を使ってmake & make installで確認。
接続のタイミングが少し遅いが、接続が確立できる。
無線モード(802.11a/b/g)の変更も可能。
iwlistでも2.4Ghz,5Ghz共にチャンネルがリストされる。
但し、countrycodeをいくらセット(モジュールオプションやソースのデフォルトコードを変更)しても2.4Ghz CH12〜CH14が認識されない為、この部分は使用できない。
madwifiなら目的を達成できますが、普段周りとの干渉も考慮してCH13を使用しているので完璧ではない。
802.11aのみにすればいいのですが、他PCでもubuntuで802.11aで接続できない状況がある為に断念。
こちらも全て戻す。
* 結果からath5kを使うchipの一部?全部?は5Ghzを使えない可能性がある?
ちなみに他PCに使っている無線LANのmini-pciカード
Atheros Communications Inc. AR5212 802.11abg NIC [168c:1014] (rev 01)
(ファームウェア書き換えで802.11aはW52対応となっている)
も5Ghz系が認識されないので802.11aでの接続ができません。
どちらのカードもwindowsでは問題なく802.11aで接続可能です。
長く見づらくなってしまいましたが結果報告まで
$ modinfo ath5k
parm: nohwcrypt:Disable hardware encryption. (bool)
parm: all_channels:Expose all channels the device can use. (bool)
parm: fastchanswitch:Enable fast channel switching for AR2413/AR5413 radios. (bool)
parm: no_hw_rfkill_switch:Ignore the GPIO RFKill switch state (bool)
上記の all_channels が気になります。
オフライン
上記の all_channels が気になります。
こちらは既に試していますが、状況に変化はありません。
iwconfigで既に無線モードが802.11b/gに固定で変更できませんので、ch1〜ch14にしか影響しない様です。
cfg80211側のモジュールパラメータも試していますが、状況に変化はありませんでした。
ndiswrapperで接続が確立できない件は、CUI環境ではwpa_supplicantとの連携、GUI環境ではnetwaork managerとの連携がうまくいかない様です。
iwconfigでSSIDとチャンネルを指定し直してやれば接続が確立します。
ndiswrapperにすると選択されるチャンネルが何故かchannel 1になってしまい他のチャンネルをサーチに行かなくなってしまう。
wpa_supplicantやnetwork managerとの連携がうまく行かないのが原因だと思いますが・・・
はじめまして。
私もkatsu07さんとまったく同じ状況なのですが、その後解決しているようでしたら、解決方法を教えていただけないでしょうか。
よろしくお願いします。
オフライン
残念ですが、この後しばらくして当時使用していたPC(当時でもかなり古い機種)が再起不能になり、現在所持しておりません。
又、この問題はしばらく調べたりしておりましたが、結局同時のkernel-3.2系のドライバー(ath5k)が原因であると判断して諦めました。
現状のubuntu 12.04に提供されている他のカーネルは解りませんが、使用していたネットワークカードもPCMCIAの古い物であり、それをサポートしていたドライバー(ath5k)側も変わっている可能性は低いと思います。
katsu07さん
お返事ありがとうございます。承知しました。
私が使っているネットワークカードも古いものなので、諦めかけているところです。。。
オフライン
自分の持っている無線LAN子機が動作するかはwireless.kernel.orgを見ると一覧表になっているものが有りわかりやすいです。
ここをよくみて、自分の目的をみたすチップを見つけてネットオークションなどで入手するとラクで良いと思います。
ちなみにここを見ると日本企業のチップが一つもないことに気が付きます。(喜悲交交)
オフライン
Aterm WL54SC の 802.11a モードが ubuntu 12.04 の標準カーネルでなぜ利用できないのかは、
katsu07 さんのご指摘どおり、Linux カーネルの ath5k ドライバのコードに原因があるようです。
http://harakire.tripod.com/junkies/ath5k_for_wl54sc.html
に詳細と解決策 (http://harakire.tripod.com/junkies/ath5k_for_wl54sc.txt) が載っていて、
おそらく 3.2 系カーネルでも
$ cd linux-3.2.59 $ patch -b -p1 < ../ath5k_for_wl54sc.txt
のようにしてカーネルソースを改造すれば解決する可能性があります。
自分では確認できる環境がないので可能性に言い及ぶだけですが、参考になればと。
オフライン