(Репост старой статьи в блоге — она все еще набирала популярность и казалась полезной для некоторых людей. Здесь очень старая информация о Linux. Backtrack 5RC3!?)

Настройка:

Вы купили карту WiFi, которую можно использовать на 500 мВт или даже на 1 Вт. Вы запускаете iwconfig и видите, что txpower установлено только на 20. Вы пытаетесь установить его на 30, и оно не позволяет вам. Вы пытаетесь указать свое местоположение в Боливии, потому что читали, что это исправит ситуацию, но это не помогает.

Возможно, это карта Alfa AWUS036NHA, а может быть, это другая модель.

Что ж, оказывается, у некоторых карт местоположение установлено в их EEPROM, поэтому, даже если вы находитесь в Канаде, где вы должны иметь возможность установить свою мощность на 27, вы не можете подняться выше 20, потому что карта думает, что она находится в СОЕДИНЕННОЕ КОРОЛЕВСТВО.

Вот как это исправить в Linux. Эти инструкции были протестированы в Backtrack 5RC3.

Когда карта подключена, делается вызов CRDA, который устанавливает ваше местоположение на основе данных, содержащихся в eeprom. Затем предоставленный wireless-regdb файл регламента.bin содержит соответствующие ограничения, применимые к этому местоположению. Так что все, что нужно, чтобы это исправить, — это поставить regregular.bin, который заменяет неправильные ограничения страны на соответствующие. Однако этот двоичный файл подписан, и система проверяет, не был ли он подделан. Вот простые шаги, которые вам нужно выполнить в правильном порядке, чтобы обойти эту проверку.

ВНИМАНИЕ! Снятие всех ограничений может быть незаконным. Не делайте этого, а если сделаете, то это ваше решение нарушить закон, а не мое.

  1. Убедитесь, что у вас установлены следующие пакеты: python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
  2. Скачайте wireless-regdb и CRDA с Kernel.org. Обязательно скачайте последние версии.
  3. Извлеките их, каждый в свой каталог.
  4. В каталоге wireless-regdb вы найдете файл db.txt. Это ASCII-версия регламента.bin. Редактируйте на свое усмотрение, но помните, что ограничения применяются сначала для «мира» (00), а потом уже для страны. Так, например, у BO нет ограничений, поэтому скопируйте это в ограничения «World». См. предупреждение о законности выше. Примените надлежащие ограничения для вашей страны к стране, в которой, по мнению вашей карты, находится. Таким образом, ограничения вашей страны будут применяться даже к карте, которая считает, что она, например, «GB».
  5. создать wireless-regdb.
  6. В процессе компиляции был создан самоподписанный файлregulatory.bin. Перезапишите тот, который был в вашей системе (который вы должны сделать резервную копию в первую очередь) в /usr/lib/crda/regulatory.bin
  7. Скопируйте все файлы .pem из извлеченного каталога wireless-regdb в каталог crda/pubkeys. Это то, что crda будет использовать для проверки правильности регламента.bin.
  8. Перейдите в извлеченный каталог crda и создайте. Если вы получаете отказ в доступе к key2pub, вы можете chmod +xотправить этот файл.
  9. установитьCRDA.
  10. Перезагрузите и проверьте карту. Теперь ему должно быть разрешено работать на максимальной мощности, разрешенной в вашей стране!