Данная статья носит чисто теоретическое исследование,  в части стран, в частности в России законодательством запрещено увеличивать мощность wi-fi адаптера. Все действия вы будете производить на ваш страх и риск.

В предыдущей статье aircrack-ng мы частично рассмотрели тюнинг с выставлением региона Белиз, была дана ссылка на интересный материал  wi-fi more 30 dBm  данная статья изначально задумывалась, как перевод, но в ходе написания я решил пойти немного дальше.

Все действия предпринимались с адаптерами Alfa Network, усиление мощности при работе с другими адаптерами не гарантируется!

Для ленивых, или для тех кому лень читать был написан небольшой скрипт: запустив следующую последовательность в консоли при выборе региона BO вы получите мощность в 33 dBm или 2 Вт !!!

apt-get install python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
cd /root/
git clone https://github.com/Distrotech/wireless-regdb.git
git clone https://github.com/greearb/crda-ct.git
cd wireless-regdb/
sed '/BO:/,+3s%(20)%(33)%g' db.txt > db.tmp && mv db.tmp db.txt
make
cp regulatory.bin /lib/crda/regulatory.bin
cp root.key.pub.pem ../crda-ct/pubkeys/root.key.pub.pem
cp /lib/crda/pubkeys/benh@debian.org.key.pub.pem /root/crda-ct/pubkeys/benh@debian.org.key.pub.pem
cd ../crda-ct
sed 's%REG_BIN?=/usr/lib/crda/regulatory.bin%REG_BIN?=/lib/crda/regulatory.bin%g' Makefile > Makefile.tmp && mv Makefile.tmp Makefile
make
make install
iw reg set BO

script

Вы наверно спросите зачем такие сложности и что мы будем с этого иметь?  Давайте разберемся откуда у нас берутся стандартные настройки  и что мы можем с этим сделать.  Существует ISO 3166, определяющий кодовые обозначения государств и зависимых территорий, а так же crda agent, который посылает ядру wireless regulatory domain.  Crda запускается  udev скриптом. Если мы хотим изменить регион для тюнинга мы используем утилиту iw.

rules

Так вот когда crda посылает ядру информацию о текущем регионе и параметрах для него, он берет информацию из regulatory.bin — The Linux wireless regulatory database. Это обыкновенный файл, который мы можем найти по пути /lib/crda/regulatory.bin, минус что мы не можем посмотреть его стандартными средствами, для просмотра нам надо использовать утилиту regdbdump.

regdb

Так вот для того что бы у нас все заработало как мы хотим, нам надо создать новый crda и regulatory.bin, а наградой за наши труды нам будет увеличение мощности:

базовые 20dBm — 100 мВт

используем BZ 30dBm — 1000 мВт

тюнинг на примере BO 33dBm — 2000 мВт

давайте посмотрим, что мы имеем на старте

iwconfig
iw reg get
iw reg set BO
iw reg get

default

 

Для начала нам надо установить дополнительное программное обеспечение.

apt-get install python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev

new soft

 

После скачаем исходники  crda и regulatory.bin , в оригинальном мануале ссылки неправильные.

git clone https://github.com/Distrotech/wireless-regdb.git
git clone https://github.com/greearb/crda-ct.git

git

 

Первым делом изменим на нужные значения в файле  db.txt и соберем regulatory.bin .  Я сторонник использовать sed, но вы можете отредактировать файл в ручном режиме

vi db.txt

make

db.txt

 

после чего нам надо заменить оригинальный regulatory.bin и сертификаты для сборки crda

cp regulatory.bin /lib/crda/regulatory.bin

cp root.key.pub.pem ../crda-ct/pubkeys/root.key.pub.pem

cp /lib/crda/pubkeys/benh@debian.org.key.pub.pem /root/crda-ct/pubkeys/benh@debian.org.key.pub.pem

обращаю ваше внимание, что в Makefile неправильные пути для сборки, их надо исправить я использую  sed вам как будет удобно

vi Makefile

после чего запускаем сборку и установку

make

make install

да я не описался мы делаем make install, а не make checkinstall учитывая наш тюнинг .

make

 

выбираем регион BO и наслаждаемся результатом

iw reg set BO

newBO

 

Если мы посмотрим regulatory.bin  то сможем заметить в нем изменения

new regulatory

 

Минус данного мануала,  что при апгрейде системы возможны изменения в regulatory.bin  и нам придется проделать все вышеперечисленные шаги заново, но я надеюсь они не вызовут у вас затруднений.

Полезные ссылки по теме:

CRDA

Wireless-regdb

Wireless Linux

P.S. Приветствуются любые дополнения и уточнения. Спасибо.