iwconfig wlan0 txpower 30mW-動作していません


12

ワイヤレスアダプターの電力を増やしたいのですが、

sudo iwconfig wlan0 txpower 30mW

ターミナルで確認するとiwconfig、txpowerを変更しようとする前の状態のままであることがわかります。

私のネットワークコントローラーは:

02:00.0 Network controller: Intel Corporation Wireless 7260 (rev 73)

そしてifconfig、それが役立つ場合の出力は次のとおりです。

wlan0   
Link encap:Ethernet  HWaddr 80:19:34:f5:39:08  
inet addr:192.168.1.129  Bcast:192.168.1.255  Mask:255.255.255.0
inet6 addr: fe80::8219:34ff:fef5:3908/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:4474 errors:0 dropped:0 overruns:0 frame:0
TX packets:3726 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000 
RX bytes:2361924 (2.3 MB)  TX bytes:520175 (520.1 KB)

しかし、ちょうどサイドノートとして、sudo iwconfig wlan0 power offスイッチングのために、働いているwlan0の電源管理をオフにします。


sudo iwlist txpower wlan0は何を言っていますか?
j0h

回答:


14

@ wie5Ooma、法律に違反するのは正しい。しかし、質問に答えることについて。それが行くように:

警告米国では、すべての制限を削除することは違法です。これは教育上の理由のためだけであり、それを適用して法律に違反することを選択した場合、それは私の選択ではなく選択です。これを実行する際には注意してください。これは教育目的のみです!

  • まず、いくつかのパッケージを使用する必要があります。

    • python-m2crypto
    • libgcrypt11
    • libgcrypt11-dev
    • libnl-dev
  • インストールされているかどうかを確認するには:

    dpkg -s python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
    
  • そうでない場合は、インストールします。

    apt-get install python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
    
  • 次に、ワイヤレス規制データベースCRDAと、wireless-regdb規制領域をLinuxカーネルに提供するためにCRDAが読み取るデータベースを構築するツールが必要になります。

  • ダウンロードフォルダーに移動し、ファイルを解凍します。

ここからが面白い部分です。ここで実際に規制を変更することができます。ディレクトリをwireless-regdbフォルダに変更すると、そこにというファイルがありますdb.txt。これが編集するファイルです。それを簡単に見てみましょう:

more db.txt

db.txtの詳細

  • ここで、いくつかのことを見てみましょう。上記の下線を見てください。最初に、country 00世界の規制ドメインである最初のエントリ()に注目してください。これは他のすべての前に適用されます。そのため、BackTrackシステムをオンにすると、世界ドメインが最初に適用され、その後、規制ドメインを国AMのような他の国に変更できます。

2番目に下線を引いたものは、最大20 dBmになる可能性があり、3番目に下線を引いたものは2.4ghz帯域です。あなたが行くことができるどのくらい高く変更したい場合、それはあなたが変更したい数です。

  • たとえば、ボリビアのルールを変更しましょう*

    nano db.txt国BOが見つかるまで下にスクロールします。 ここに画像の説明を入力してください

  • 私が強調したものを見てください。これは、変更する数値です。

カードが最大2000 mWになる場合は、その数値を33に変更します。これは、33 dBmを表し、約2000 mWです。置き換える番号はデシベル単位です。

あなたのカードについてはわかりません。AWUS036NHAのような一部のワイヤレスカードは国でスタックしている可能性があり、その国から変更することはできません。その場合は、カードがどの国にあると考えているかを調べ、その国の構成を変更します。

クイックデシベル理解:

すべての10デシベルである10倍から開始電力の増加dBm単位が1に等しい1mW以下 ... 10 dBmでは等しいが10mWを20 dBmには等しくは100mWを30 DBMは等しい 千のMwを、というように。クイックデシベル理解:

10デシベルごとに、1 dBmから1 mWに等しい電力が10倍に増加します。10dBmは10 mW、20 dBmは100 mW、30 dBmは1000 mWなどです。3デシベルごとに前の電力の約2倍になるため、30 dBmは1000 mWです。3dBmを追加すると、33 dBmが約2000 mWになるように電力を2倍にできます。3デシベルごとに約2倍になります

前の電力は、その30 dBmのは、ある1000年mWの我々が追加した場合、3 dBmのを、我々は、このようなことに力を倍増することができ、33 dBmのは同じことを約ある2000 mWの

さて、注意してください。

ここに画像の説明を入力してください

番号を33に変更したことに注意してください。我々はここで終了すると私は私の調節ドメインを変更すると、BO、私は私を設定することができますtxpowerする33

  • 最初にCtrl+ X、次にY、最後にを押して、完了したら変更を保存しますEnter

ここで、古い規制ファイルをダウンロードしたものと交換する必要があります。まだwireless-regdbディレクトリにいる間に、単にコマンドを入力しmakeます。

そのディレクトリに新しいファイルがいくつかあることに気付くでしょう。これはいい。あなたregulatory.binは、このディレクトリ内のファイルは現在、古いものに交換する必要があります。

最初に本物regulatory.dbのの場所に移動します。

cd /usr/lib/crda

また、念のために古いもののバックアップも作成しましょう(推奨)。

mv regulatory.bin regulatoryOLD.bin

それでは、新しいものを導入しましょう。新しいregulatory.binのディレクトリに戻り、コピーしてそこにあることを確認しましょう。

cd {path to your new regulatory.bin}
cp regulatory.bin /usr/lib/crda/regulatory.bin
cd /usr/lib/crda
ls

検証 これで新しいregulatory.dbができましたが、まだ有効ではありません。wireless-regdbディレクトリに戻ると、拡張子が.pemのファイルがあることがわかります。で終わるすべてのファイル.pemを、のダウンロードしたcrdaディレクトリにコピーしますpubkeys。これらは、CRDA regulatory.binが有効かどうかを確認するために使用するファイルです。

cd ~/Desktop/wireless-regdb-2013.10.11
cp root.key.pub.pem ~/Desktop/crda-1.1.3/pubkeys/root.key.pub.pem
cp linville.key.pub.pem
~/Desktop/crda-1.1.3/pubkeys/linville.key.pub.pem

そして確認:

cd ~/Desktop/crda-1.1.3/pubkeys
ls

最後に、ダウンロードしたcrdaディレクトリに戻るディレクトリに移動して、この子犬をインストールします。

cd ..
make
make install

あなたはそのようなものを見ているは​​ずです。 ここに画像の説明を入力してください

その場合、再起動します。 sudo reboot

再起動後:

iw reg set BO
iwconfig wlan0 txpower 33

3
john_sには、Intelカードの安定性の問題があり、ワイヤレス電源の問題ではありません(XYの問題meta.stackexchange.com/questions/66377/what-is-the-xy-problem)ただし、あなたの答えは質問、それは高出力アンテナに対してのみ機能しますが、あなたの答えは恩恵に値します。
エリオ

ボリビアのトリックは、dbが30未満の場合にのみ機能するはずです。ボリビアの設定を見ると、制限は30です。ボリビアに切り替えて、さらに高くしたい場合は、編集して再コンパイルする必要があります。地域設定を含むデータベース。なぜ米国を使用しないのか、私にはわかりませんが、データベースに米国が含まれています。これを試してください:null-byte.wonderhowto.com/how-to / ...ただし、crdaの実際のソースを見つける必要があります。私はのmanページで、このページを発見wireless.wiki.kernel.org/en/developers/Regulatory#crda
エリオ

1
regulatory.dbファイルはどこにありますか?ubuntu 16.04では、/ usr / lib / crdaフォルダーすらありません。/ lib / crdaフォルダーで見つけました。
言葉forthewise

私のためにlinville.key.pub.pemキーを作成したことはありません。
言葉forthewise

(テストのために)txpowerを下げようとしていますが、それでも20dBmに変更されません。何か案は?
チェファロフ

6

送信電力を上げようとしていますが、それは法的にも技術的にも制限を受けます。ワイヤレス送信では、CRDAルールが遵守されます。このルールは、許可される最大送信電力を記述するリストです。お使いのデバイス/オペレーティングシステムには国コードがあるため、何をすべきかを知っています。国コードがない場合は、常に安全に使用できる一般的な値で動作します。

さらに、特定のカードは技術的に制限されています。彼らは作り付けの固定国コードを持ち、あなたが何をしようとしてもより高い力を使用できないように構築されています。

Intelワイヤレスカードもありますが、Txの電力は、増加しようとしても常に16です。


こんにちはwie5Ooma、基本的に、私は法律に違反したくはありませんし、ワイヤレスアダプターを30wMに設定することも特に目指していません。ただし、Windowsでは、表示される信号強度と接続のフェルト速度がはるかに優れており、安定しています。私が試すことができるものに関する他のヒントはありますか?
johann_ka

これで、質問を意見ベースの領域に少しシフトしています。数値的な証拠がなければ、Windowsを使用していないので、WindowsとLinuxに違いがあるかどうかは本当にわかりません。これについてもう少し考えなければなりません。サイドノートで:あなたはmWの代わりにwMを書いていることを知っていますか?したがって、最初は小さなMで、その後にミリワットを表す大文字のWスペルmWが必要です。
wie5Ooma

2

これは、法律が制限されている国にいるためです。あなたはあなたの地元の限界を超えてパワーを増やすことができますが、これはおそらく法律を破るでしょう。これは高出力アンテナ専用です。

方法1:

ターミナルを開き、次のコマンドをコピーして貼り付けます。

ifconfig wlan0 down
iw reg set BO
iwconfig wlan0 txpower 30
ifconfig wlan0 up

上記の方法で次のエラーが発生する場合は、方法2に進みます。

Error for wireless request "Set Tx Power" (8B26) :
SET failed on device wlan0 ; Invalid argument.

方法2:

ターミナルを開き、次のコマンドをコピーして貼り付けます。

ifconfig wlan0 down
iw reg set BO
iwconfig wlan0 channel 13
iwconfig wlan0 txpower 30
ifconfig wlan0 up

SOURCE:このページ


1
ああ、私はsudo iwconfig wlan0 txpower 30mWを意味しました。30mWの代わりにsudo iwconfig wlan0 txpower 20mWを実行しても、機能しません。
-johann_ka

それが機能しないことをどのように知っていますか?
ヘリオ

@ Helio:戻ってきてくれてありがとう。どちらの方法でも、ステップ2 sudo iw reg set B0は次のエラーメッセージを生成します。有効なISO / IEC 3166-1 alpha2ではない特殊なalpha2以外の使用可能なエントリ:00世界規制ドメイン
-johann_ka

@ Helio:iwconfigを入力し、Tx-Power = NUM​​BER HERE dBmの後ろの数字を確認するだけで、それが機能するかどうかを確認できると考えていました
-johann_ka

1
それはBOボリビアではなく、B-ゼロとして、Oで
エリオ

2

これらのコマンドを入力すると、AGG TXが有効になり、ワイヤレスNネットワークのパフォーマンスが大幅に向上します。このバグレポートは、パフォーマンスを使用せずにパフォーマンスが85%低下したことを示しています11n_disable=8

sudo rmmod iwlmvm
sudo rmmod iwlwifi
sudo modprobe iwlwifi 11n_disable=8

ここで、通常どおりコンピュータを試してください。信号がまだ低い場合、この解決策はおそらくあなたの場合の解決策ではありません。この場合、コンピュータを再起動して、行った変更を元に戻します。正常に高速になったら、ターミナルで次の行を入力して永続的に実行します。

sudo gedit /etc/modprobe.d/iwlwifi-disable11n.conf

ファイルが開かれます(それより前に存在しない場合があります)。ファイルの最後に、次の行を貼り付けて保存します。

options iwlwifi 11n_disable=8

保存したら、終了して再起動します。


これが機能しない場合は、手順を置き換え11n_disable=811n_disable=1繰り返します。


こんにちはヘリオ、これに感謝します。入力するsudo rmmod iwlwifiと、次のエラーメッセージが表示されますrmmod: ERROR: Module iwlwifi is in use by: iwlmvm。iwlmvmを無効にしますか?
-johann_ka

この答えが元の質問とどう関係しているかはわかりません。この「11n_disable」トリックは信号強度を改善しません。11nネットワークでは、N速度機能を無効にして速度を11gに制限しているため、接続を効果的に損ないます。 / s。
wie5Ooma

@ wie5Oomaあなたには理由がありますが、接続の安定性は向上しますが、速度については、大きな損失にはならないと思いますが、john_sには最後の言葉があります;
Helio

@john_sはい、iwlmvmロードされている場合は削除できます。次のコマンドを使用しますsudo rmmod iwlmvm。投稿を更新しました。
ヘリオ

1
ボリビアのトリックは、dbが30未満の場合にのみ機能するはずです。ボリビアの設定を見ると、制限は30です。ボリビアに切り替えて、さらに高くしたい場合は、データベースを編集して再コンパイルする必要があります。地域の設定。なぜ米国を使用しないのか、私にはわかりませんが、データベースに米国が含まれています。これを試してください:null-byte.wonderhowto.com/how-to / ...ただし、crdaの実際のソースを見つける必要があります。crdaのmanページでこのページを見つけました:wireless.wiki.kernel.org/en/developers/Regulatory#crda
j0h

1

こんにちは私は個人的にALPHAネットワークカードawus036nhでKali linux 2を使用し、方法1を使用してTXカードの電力を変更します。

BO reg setに問題がある場合は、代わりにGY reg setを試してください。それは私にとって完全に機能していますが、BOで失敗します!それが役に立てば幸い!

ifconfig wlan1 down
iw reg set GY
iwconfig wlan1 txpower 30
ifconfig wlan1 up

0

Ubuntu 16.10の場合、crdaはの下にあり/lib/crda/ます。新しい「crda」をコンパイルするには、次のようにします。

sudo su
cp -r /lib/crda /usr/lib/crda
cd /usr/lib/crda
mv regulatory.bin regulatory.bin.bak
cd {path to your new regulatory.bin}
cp regulatory.bin /usr/lib/crda/regulatory.bin

次に、生成された* .pemファイルをダウンロードしたcrdaディレクトリに移動します。

cd {path to downloads folder}/wireless-regdv-YYYY.MM.DD
cp {path to your new regulatory.bin}/*.pem pubkeys/
make
make install

crdaフォルダーを「/ usr / lib / crda」からUbuntu 16のデフォルトパスにコピーします。

cp -r /usr/lib/crda /lib/ 

sudo rebootおよびiw reg set {country-code}

私はこの方法を使用して、私の国のアマチュア無線サービスに割り当てられた周波数範囲と法的電力レベルを使用するようにWi-Fiを設定しました。これは、認可されたアマチュア無線オペレーターのみに制限されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.