aloha!
у меня давно собран all-in-one сервачек, всячески упрощающий мне процесс употребления нелицензионной медиапродукции.
1,5 назад я сделал его еще более "олинуанистие", превратив его еще и роутер.
процесс настройки роутерной часть был жестким
сексо.. красногла...... а ладно, просто жестким.
но, к сожалению, полного удовлетворения получить не удалось - скорость в режиме n редко поднималась выше 76 mbs, вечером падала до 54 mbs, что затрудняло или делало невозможным многие запланированные процедуры использования.
я много читал, искал, но вывод был неутешительным - в забитом роутерами доме надо было использовать диапазон в 5ghz.
но моя железка хоть и обещала работать на данной частоте, обещаний своих не выполняла - при попытке выставить канал в hostapd.conf канал, соответствующий 5ghz диапазону, hostapd отказывался запускаться, заявляя, что железо этого не может.
я плюнул на все это и забыл.
а через 1,5 года, несколько дней назад мне попалась вот эта статья:
http://www.linux.org.ru/forum/linux-hardware/7860674там автор столкнулся с той же проблемой и успешно ее решил.
прочитав эту статью я загорелся.
правда, первым моим порывом было отредактировать eerom, но готовой утилиты я не нашел (вернее, нашел, но она не умела принудительно устанавливать страну), потому пришлось все делать ручками.
и так, имеем устройство, работающее под управлением ath9k, способное работать в диапазоне 5ghz и уже работающий hostapd, поднимающий 2,4 ghz n сеть.
1) создаем директорию для красноглазия:
mkdir -p ~/sources/compat-wireles
2)
cd sources/compat-wireles
3) wget
http://www.orbit-lab.org/kernel/compat-wireless-3-stable/v3.6/compat-wireless-3.6.8-1.tar.bz24) tar zxf compat-wireless-3.6.8-1.tar.bz2
5) cp -r compat-wireless-3.6.8-1 compat-wireless-3.6.8-1.tar.new
6) создал file.patch cо следующим содержанием:
diff -ru compat-wireless-3.6.8-1/drivers/net/wireless/ath/regd.c compat-wireless-3.6.8-1.new/drivers/net/wireless/ath/regd.c
--- compat-wireless-3.6.8-1/drivers/net/wireless/ath/regd.c 2012-03-19 05:15:34.000000000 +0600
+++ compat-wireless-3.6.8-1.new/drivers/net/wireless/ath/regd.c 2012-06-05 20:47:03.906526443 +0600
@@ -196,6 +196,8 @@
u32 bandwidth = 0;
int r;
+ return;
+
for (band = 0; band < IEEE80211_NUM_BANDS; band++) {
if (!wiphy->bands[band])
@@ -255,6 +257,8 @@
u32 bandwidth = 0;
int r;
+ return;
+
sband = wiphy->bands[IEEE80211_BAND_2GHZ];
if (!sband)
return;
@@ -304,6 +308,8 @@
struct ieee80211_channel *ch;
unsigned int i;
+ return;
+
if (!wiphy->bands[IEEE80211_BAND_5GHZ])
return;
@@ -510,6 +516,8 @@
{
const struct ieee80211_regdomain *regd;
+ return 0;
+
wiphy->reg_notifier = reg_notifier;
wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY;
7) применил патч:
media@media-server:~/sources/compat-wireless$ patch -p1 -l < file.patch
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -ru compat-wireless-3.6.8-1/drivers/net/wireless/ath/regd.c compat-wireless-3.6.8-1.new/drivers/net/wireless/ath/regd.c
|--- compat-wireless-3.6.8-1/drivers/net/wireless/ath/regd.c 2012-03-19 05:15:34.000000000 +0600
|+++ compat-wireless-3.6.8-1.new/drivers/net/wireless/ath/regd.c 2012-06-05 20:47:03.906526443 +0600
--------------------------
File to patch: compat-wireless-3.6.8-1.new/drivers/net/wireless/ath/regd.c
patching file compat-wireless-3.6.8-1.new/drivers/net/wireless/ath/regd.c
Hunk #1 succeeded at 200 (offset 4 lines).
Hunk #2 succeeded at 261 (offset 4 lines).
Hunk #3 succeeded at 312 (offset 4 lines).
Hunk #4 succeeded at 520 (offset 4 lines).
media@media-server:~/sources/compat-wireless$
приступил к сборке пропатченого драйвера:
cd compat-wireless-3.6.8-1.new && ./scripts/driver-select ath9k
9) make
10) sudo checkinstall -D
после того, как пакет собран и установлен, разумно будет перегрузиться
11) sudo reboot
12) теперь открываем sudo nano /etc/hostapd/hostapd.conf
и находим и меняем следующие строки:
country_code=GB
hw_mode=a
channel=44
13) перезапускаете hostapd
sudo /etc/init.d/hostapd stop
sudo /etc/init.d/hostapd start
и, вуаля, вы в своей новой прекрасной сети 5ghz сети!
лично я получил 104 мегабитную сеть, но это еще не все!
лезем снова в /etc/hostapd/hostapd.conf
и находим строку
ht_capab=, раскомментируем ее и начинаем подбирать параметры.
1,5 года назад я много что о них узнал, но время вытерло эти знания.
потому я вписал все, что мог, т.е.:
ht_capab=[HT40+][HT40-][SHORT-GI-40][TX-STBC][RX-STBC1][DSSS_CCK-40]
потом убил hostapd
sudo /etc/init.d/hostapd stop
и запусил снова, но уже не как демона, а как программу
sudo hostapd /etc/hostapd/hostapd.conf
программа у меня не запустилась, ругнувшись на то, что железо что-то там не поддерживает.
я изменил параметры:
ht_capab=[HT40-][SHORT-GI-40][TX-STBC][RX-STBC1][DSSS_CCK-40]
та-дам!
мой компьютер 2007 года выпуска приконектился к сети со скоростью 243 mbs.
ооок.
теперь немного скриншотов: