LINUX.ORG.RU

Включение 802.11n в hostapd на RT2870


0

2

Имеется WiFi-модуль D-Link DWA-140 на чипе RaLink RT2870. Hostapd.conf:

interface=wlan0
driver=nl80211
bridge=br0
ssid=DWA-140
country_code=RU
hw_mode=g
channel=7

macaddr_acl=0

auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=xxx
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

wme_enabled=1
ieee80211n=1

Но, как я понял, N в данный момент не задействован (IPTV по нему нормально не проигрывается, хотя, когда у меня была аппаратная точка доступа, то на том же клиентском устройстве всё нормально игралось).

На LinuxWireless написано, что нужна ещё одна строчка:

ht_capab=[HT40+][SHORT-GI-40][DSSS_CCK-40]

где в скобках — возможности, поддерживаемые картой, которые можно узнать командой iw list.

Собственно, там много чего, но я что-то не уверен, что оно всё к n относится:

Wiphy phy0
        Band 1:
                Capabilities: 0x2f2
                        HT20/HT40
                        Static SM Power Save
                        RX Greenfield
                        RX HT20 SGI
                        RX HT40 SGI
                        TX STBC
                        RX STBC 2-streams
                        Max AMSDU length: 7935 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
                Minimum RX AMPDU time spacing: 2 usec (0x04)
                HT RX MCS rate indexes supported: 0-15, 32
                TX unequal modulation not supported
                HT TX Max spatial streams: 2
                HT TX MCS rate indexes supported may differ
                Frequencies:
                        * 2412 MHz [1] (20.0 dBm)
                        * 2417 MHz [2] (20.0 dBm)
                        * 2422 MHz [3] (20.0 dBm)
                        * 2427 MHz [4] (20.0 dBm)
                        * 2432 MHz [5] (20.0 dBm)
                        * 2437 MHz [6] (20.0 dBm)
                        * 2442 MHz [7] (20.0 dBm)
                        * 2447 MHz [8] (20.0 dBm)
                        * 2452 MHz [9] (20.0 dBm)
                        * 2457 MHz [10] (20.0 dBm)
                        * 2462 MHz [11] (20.0 dBm)
                        * 2467 MHz [12] (20.0 dBm)
                        * 2472 MHz [13] (20.0 dBm)
                        * 2484 MHz [14] (disabled)
                Bitrates (non-HT):
                        * 1.0 Mbps
                        * 2.0 Mbps (short preamble supported)
                        * 5.5 Mbps (short preamble supported)
                        * 11.0 Mbps (short preamble supported)
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
        max # scan SSIDs: 4
        Supported interface modes:
                 * IBSS
                 * managed
                 * AP
                 * AP/VLAN
                 * WDS
                 * monitor
                 * mesh point
        Supported commands:
                 * new_interface
                 * set_interface
                 * new_key
                 * new_beacon
                 * new_station
                 * new_mpath
                 * set_mesh_params
                 * set_bss
                 * authenticate
                 * associate
                 * deauthenticate
                 * disassociate
                 * join_ibss
                 * Unknown command (68)
                 * Unknown command (55)
                 * Unknown command (57)
                 * Unknown command (59)
                 * Unknown command (67)
                 * set_wiphy_netns
                 * Unknown command (65)
                 * Unknown command (66)
                 * connect
                 * disconnect

Собственно, что нужно сделать, чтобы включить N или убедиться, что оно включено?

Драйвер — rt2800usb, из compat-wireless для 3.0.0, hostapd 0.7.3.

☆☆☆☆☆

Последнее исправление: Ttt (всего исправлений: 2)
Ответ на: комментарий от Ttt

Так начнёшь верить в судьбу. Такое ощущение, что свыше начертано, что у меня дома никогда не будет WiFi. С WiFi-роутерами ничего не получилось: три бракованных экземпляра попались. Теперь и с модулем для компьютера ничего не получается, хотя должно всё работать.

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Ttt

У меня после этого коммита скорость резко падает и вместо 20-25 Мбит, я получаю 1-5 Мбит и нестабильный коннект.

daemonpnz ★★★★★
()
Ответ на: комментарий от Ttt

В общем, вообще ничего не понимаю. Ну вообще непонятно, почему не хочет работать, причём всегда по-разному. Ну хоть бы написало конкретно, что где не так. А то так тупо рвётся и дальше никак восстановить не удаётся. Ну почему так?

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Ttt
CONFIG_EAP=y
CONFIG_EAP_MD5=y
CONFIG_WPS=y
CONFIG_WPS_UPNP=y
CONFIG_EAP_GTC=y
CONFIG_EAP_SIM=y
CONFIG_EAP_AKA=y
CONFIG_EAP_PAX=y
CONFIG_EAP_PSK=y
CONFIG_EAP_SAKE=y
CONFIG_EAP_GPSK=y
CONFIG_EAP_GPSK_SHA256=y
CONFIG_DRIVER_HOSTAP=y
CONFIG_DRIVER_WIRED=y
CONFIG_DRIVER_PRISM54=y
CONFIG_DRIVER_NONE=y
CONFIG_DRIVER_NL80211=y
CFLAGS += -I/usr/include/netlink
LIBS += -L/usr/lib
CONFIG_PKCS12=y
CONFIG_RADIUS_SERVER=y
CONFIG_IAPP=y
CONFIG_IEEE80211R=y
CONFIG_IEEE80211W=y
CONFIG_IEEE80211N=y
CONFIG_PEERKEY=y
CONFIG_RSN_PREAUTH=y
CONFIG_NO_STDOUT_DEBUG=y

Как то так

daemonpnz ★★★★★
()
Ответ на: комментарий от daemonpnz

Всё равно не работает. Есть идеи? Ну попробую более свежий compat-wireless поставить, но что-то не уверен, что поможет. Проблема, как я понял, в аутентификации. А я вообще её механизм не понимаю.

И можно полный рабочий hostapd.conf для этого чипа, если есть? А то может какую мелочь упускаю?

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Ttt

тот который я тебе в самом начале кидал, работал нормально с dwa-140. И коннектилось как бы на N, но скорости соответствующей не было.

daemonpnz ★★★★★
()
Ответ на: комментарий от Ttt
interface=wlan1
driver=nl80211
ieee80211d=1
country_code=EU
logger_syslog=-1
logger_syslog_level=0
logger_stdout=-1
logger_stdout_level=0
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
ssid=test
hw_mode=g
ieee80211n=1
ht_capab=[HT40-][GF][SHORT-GI-40][RX-STBC12]
channel=6
beacon_int=100
dtim_period=2
max_num_sta=255
rts_threshold=2347
fragm_threshold=2346
preamble=1
auth_algs=3
ignore_broadcast_ssid=0
wmm_enabled=1
wmm_ac_bk_cwmin=4
wmm_ac_bk_cwmax=10
wmm_ac_bk_aifs=7
wmm_ac_bk_txop_limit=0
wmm_ac_bk_acm=0
wmm_ac_be_aifs=3
wmm_ac_be_cwmin=4
wmm_ac_be_cwmax=10
wmm_ac_be_txop_limit=0
wmm_ac_be_acm=0
wmm_ac_vi_aifs=2
wmm_ac_vi_cwmin=3
wmm_ac_vi_cwmax=4
wmm_ac_vi_txop_limit=94
wmm_ac_vi_acm=0
wmm_ac_vo_aifs=2
wmm_ac_vo_cwmin=2
wmm_ac_vo_cwmax=3
wmm_ac_vo_txop_limit=47
wmm_ac_vo_acm=0
eapol_key_index_workaround=0
eap_server=0
own_ip_addr=127.0.0.1
wpa=3
wpa_passphrase=testtest
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
rsn_pairwise=CCMP
wpa_group_rekey=600
wpa_gmk_rekey=7200
wpa_ptk_rekey=600

Вот

daemonpnz ★★★★★
()
Ответ на: комментарий от daemonpnz

То есть вообще выключить WPA? У меня в домашней сети много чего интересного, так что для практических целей не сгодится.

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Ttt

Ну так ты эксперимент проведи. А потом навешивай потихоньку. Сначала wep, потом wpa-tkip/aes, потом wpa2-tkip/aes.

daemonpnz ★★★★★
()
Ответ на: комментарий от daemonpnz

А по поводу обновления compat-wireless (ядро — 3.0.0, пытаюсь поставить cw 3.2) выдаёт ошибку:

[code]/home/mgr/packages/compat-wireless-3.2-1/drivers/net/wireless/libertas/if_usb.c:1139:4: ошибка: неявная декларация функции «olpc_ec_wakeup_clear» [-Werror=implicit-function-declaration] /home/mgr/packages/compat-wireless-3.2-1/drivers/net/wireless/libertas/if_usb.c:1141:4: ошибка: неявная декларация функции «olpc_ec_wakeup_set» [-Werror=implicit-function-declaration] cc1: некоторые предупреждения считать ошибками

make[4]: *** [/home/mgr/packages/compat-wireless-3.2-1/drivers/net/wireless/libertas/if_usb.o] Ошибка 1 make[3]: *** [/home/mgr/packages/compat-wireless-3.2-1/drivers/net/wireless/libertas] Ошибка 2 make[2]: *** [/home/mgr/packages/compat-wireless-3.2-1/drivers/net/wireless] Ошибка 2 make[1]: *** [_module_/home/mgr/packages/compat-wireless-3.2-1] Ошибка 2 make[1]: Выход из каталога `/usr/src/linux-headers-3.0.0-15-generic' make: *** [modules] Ошибка 2 [/code]

Как с этим справиться? Как я понял, это предупреждение, но где-то настроено, что оно считается за ошибку. Как хотя бы заставить проигнорировать?

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

Так и не заработало нормально. С твоим конфигом но старым Compat-wireless (3.0.0) проработало несколько часов с разрывами, а потом разорвалось без возможности восстановления. Обновил compat-wireless до 3.2-s — то же самое.

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

Не забываю. cat /sys/module/rt2800usb/parameters/nohwcrypt Y

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

Только что возникло сильное подозрение, что по крайней мере одной из причин является multicast. Запустил IPTV на другом компьютере (подключённом к сети, с которой мостом соединена WiFi-сеть) — сразу же отвалился WiFi. Попробовал отключить на мосту multicast snooping — вроде теперь проигрывание IPTV на соседних компьютерах не ломает WiFi.

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

А радиус действия в таких случаях примерно какой? А то думаю, возможно ли в качестве второй причины слишком большое расстояние. На 15 метров достаёт? И есть ли в hostapd или ещё где настройки, связанные с мощностью? Если сделать iwconfig wlan0 power off, то должно ли чем-то помочь?

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

А перекрытия сильно снижают сигнал? Просто если по расстоянию, то в моём случае оно будет больше, чем пара этажей большинства жилых домов.

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

А максимальный пинг какой? А то у меня иногда нескольких секунд может достигать.

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от daemonpnz

А ещё: работающая микроволновая печь в одной комнате с модулем, работающим как точка доступа, может ли влиять на качество приёма?

Ttt ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Ttt
PING 192.168.2.15 (192.168.2.15) 56(84) bytes of data.
64 bytes from 192.168.2.15: icmp_req=2 ttl=64 time=109 ms
64 bytes from 192.168.2.15: icmp_req=3 ttl=64 time=110 ms
64 bytes from 192.168.2.15: icmp_req=4 ttl=64 time=34.2 ms
64 bytes from 192.168.2.15: icmp_req=5 ttl=64 time=49.1 ms
64 bytes from 192.168.2.15: icmp_req=6 ttl=64 time=77.6 ms
64 bytes from 192.168.2.15: icmp_req=7 ttl=64 time=97.3 ms
64 bytes from 192.168.2.15: icmp_req=8 ttl=64 time=18.9 ms
64 bytes from 192.168.2.15: icmp_req=9 ttl=64 time=40.1 ms
64 bytes from 192.168.2.15: icmp_req=10 ttl=64 time=65.6 ms
64 bytes from 192.168.2.15: icmp_req=11 ttl=64 time=83.5 ms

2 перекрытия, по расстоянию метра 3, причём адаптер ориентирован в противоположную сторону.

daemonpnz ★★★★★
()
Ответ на: комментарий от Ttt
ping 192.168.2.15
PING 192.168.2.15 (192.168.2.15) 56(84) bytes of data.
64 bytes from 192.168.2.15: icmp_req=1 ttl=64 time=91.1 ms
64 bytes from 192.168.2.15: icmp_req=2 ttl=64 time=112 ms
64 bytes from 192.168.2.15: icmp_req=3 ttl=64 time=27.2 ms
64 bytes from 192.168.2.15: icmp_req=4 ttl=64 time=51.3 ms
64 bytes from 192.168.2.15: icmp_req=5 ttl=64 time=77.1 ms
64 bytes from 192.168.2.15: icmp_req=6 ttl=64 time=100 ms
64 bytes from 192.168.2.15: icmp_req=7 ttl=64 time=15.5 ms
64 bytes from 192.168.2.15: icmp_req=8 ttl=64 time=38.5 ms
64 bytes from 192.168.2.15: icmp_req=9 ttl=64 time=65.9 ms
64 bytes from 192.168.2.15: icmp_req=10 ttl=64 time=90.7 ms
64 bytes from 192.168.2.15: icmp_req=11 ttl=64 time=112 ms
64 bytes from 192.168.2.15: icmp_req=12 ttl=64 time=23.8 ms
64 bytes from 192.168.2.15: icmp_req=13 ttl=64 time=53.2 ms
^C
--- 192.168.2.15 ping statistics ---
13 packets transmitted, 13 received, 0% packet loss, time 12018ms
rtt min/avg/max/mdev = 15.548/66.168/112.854/32.617 ms

девайс вплотную к адаптеру

daemonpnz ★★★★★
()
Ответ на: комментарий от Ttt

А ты вообще проверь как у тебя адаптер работает в качестве АР, например, в винде в виртуалке или на другом компе (может проблема с USB. У меня бывало раньше, что адаптер начинал жутко лагать и даже в виртуалке под виндой был дико большой пинг и в статистикн лавинообразно росло кол-во crc ошибок.

daemonpnz ★★★★★
()
12 июня 2012 г.

вот и добавить ht_capab=[HT40+][SHORT-GI-40][SHORT-GI-20][RX-STBC12][TX-STBC][MAX-AMSDU-7935][SMPS-STATIC][GF]

xeon_greg
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.