トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

madwifi_top

madwifiのページ

#ieee80211_frame#ISMULTICAST#output.c##multicast -> ACK:OFF RTS:ON

1.構成と概要

ターゲット

  • Ubuntu9.04

ソースコード

以下のディレクトリを使う。公式などから落としてきたものだとmakeが通らない。理由は現在調査中。

  • NAS/public/software/driver/madwifi(can make)
  • 上記のディレクトリの中身を/usr/src/modules/madwifiに格納。なければ作る。

ビルド

  • modprobe -r ath_pci
  • cd /usr/src/modules/madwifi
  • sudo make
  • sudo make install
  • sudo modprobe ath_pci

下にまとめた書き換えるファイルを参照し、該当するファイルを全て書き換える、もし存在しなければ作成する。この時点でLANカードのランプが交互に光ればほぼ成功。wlanconfig ath0 destroywlanconfig ath0 create wlandev wifi0 wlanmode adhociwpriv ath0 mode 2iwconfig ath0 essid morino-p2pifconfig ath0 192.168.100.1 ifconfig ath0 downifconfig ath0 up

  • lsmod | grep ath でath_pciが読み込まれていることを確認。
  • ifconfig ath0 upで起動(PCを起動するたびに行う、以下に起動用スクリプトを示しておく)

ランプが両方光れば成功。

書き換えるファイル

/etc/modprobe.d/madwifi.conf
## ath5k (mac80211) 
## Comment out the following line, and uncomment all of the 
## madwifi modules below to use the athk module
blacklist ath5k

## madwifi (non-free)
#blacklist ath_hal
#blacklist ath_pci
#blacklist ath_rate_amrr
#blacklist ath_rate_onoe
#blacklist ath_rate_sample
#blacklist wlan
#blacklist wlan_acl
#blacklist wlan_ccmp
#blacklist wlan_scan_ap
#blacklist wlan_scan_sta
#blacklist wlan_tkip
#blacklist wlan_wep
#blacklist wlan_xauth
/etc/modprobe.blacklist-ath_pci.conf
# For some Atheros 5K RF MACs, the madwifi driver loads buts fails to
# correctly initialize the hardware, leaving it in a state from
# which ath5k cannot recover. To prevent this condition, stop
# madwifi from loading by default. Use Jockey to select one driver
# or the other. (Ubuntu: #315056, #323830)
#blacklist ath_pci
module
起動用スクリプト
/usr/local/bin/wlanconfig ath0 destroy
/usr/local/bin/wlanconfig ath0 create wlandev wifi0 wlanmode adhoc
/sbin/iwpriv ath0 mode 2
/sbin/iwconfig ath0 essid morino-p2p
/sbin/ifconfig ath0 192.168.100.1  
ping -c 3 127.0.0.1
/sbin/ifconfig ath0 down
/sbin/ifconfig ath0 up

失敗することもあるようなので、その場合は

sudo modprobe -r ath_pci
sudo modprobe ath_pci

で読み直したり、手動で一行ずつ実行してるうちに回復する模様。場合によっては、ネットワークを一旦無効にしてからスクリプトを実行すると成功することもある。

2.いじれそうなところ

send

  • IEEE80211_SEND_MGMT
  • ieee80211_send_mgm
  • ieee80211_send_nulldata
  • ieee80211_send_qosnulldata
  • ieee80211_send_pspoll

RTS/CTS

multicast

3.いじったところ

Copyright(C) by 芝浦工業大学 工学部通信工学科, 森野研究室. All Rights Reserved.