iwconfig wlan0 txpower 30mW - 不工作

joh*_*_ka 14 wireless adapter

我想增加无线适配器的功率,但是当我输入时

sudo iwconfig wlan0 txpower 30mW

在终端中,然后检查iwconfig我可以看到 txpower 在我尝试更改它之前仍然是它以前的样子。

我的网络控制器是:

02:00.0 Network controller: Intel Corporation Wireless 7260 (rev 73)
Run Code Online (Sandbox Code Playgroud)

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)
Run Code Online (Sandbox Code Playgroud)

但是,作为旁注,sudo iwconfig wlan0 power off正在工作,用于wlan0关闭 的电源管理。

amr*_*mrx 14

@wie5Ooma,违法是对的。但关于回答问题。事情是这样的:

警告取消所有限制在美国是非法的。这只是出于教育原因,如果您选择应用它并违反法律,那么那是您的选择,而不是我的选择。请小心将其付诸行动。这仅用于教育目的!

  • 首先我们需要使用一些包:

    • python-m2crypto
    • libgcrypt11
    • libgcrypt11-dev
    • libnl-dev
  • 要检查它们是否已安装:

    dpkg -s python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果没有,安装:

    apt-get install python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
    
    Run Code Online (Sandbox Code Playgroud)
  • 现在,您需要无线监管数据库 CRDA,以及wireless-regdb构建由 CRDA 读取的数据库的工具,以便为 Linux 内核提供监管域。

  • 导航到下载文件夹并解压缩文件。

现在是有趣的部分。这是我们真正要改变规则的地方。将您的目录更改为该wireless-regdb文件夹,您将在其中找到一个名为db.txt. 这是我们将要编辑的文件。让我们快速浏览一下:

more db.txt
Run Code Online (Sandbox Code Playgroud)

更多的 db.txt

  • 现在让我们来看看这里的一些事情。看看我上面划线的内容。首先,让我们注意第一个条目 ( country 00),它是世界监管域,它在所有其他内容之前应用。因此,当您打开 BackTrack 系统时,世界域首先应用于您,然后您可以将监管域从那里更改为其他国家/地区,例如AM国家/地区。

我强调的第二件事,最大可以达到20 dBm,我强调的第三件事,在2.4GHz频段上。如果你想改变你能走多高,那就是你想要改变的数字。

  • 例如,让我们更改玻利维亚的规则*

    nano db.txt 向下滚动,直到找到国家 BO。 在此处输入图片说明

  • 看看我强调的内容。这是我们要更改的数字。

如果您的卡可以达到2000 mW,那么您可以将该数字更改为33,即33 dBm,大约为2000 mW。您要替换的数字以分贝为单位。

我不确定你的卡,一些无线卡,比如AWUS036NHA可能卡在一个国家,不能从那个国家更换。在这种情况下,找出您的卡所在的国家/地区并更改该国家/地区的配置。

快速分贝理解:

10分贝功率增加10,从1 dBm开始等于1mW ... 10 dBm等于10 mW20 dBm等于100 mW30 dBm等于 1000 mW,依此类推。快速分贝理解:

从 1 dBm 等于 1mW 开始,每 10 分贝功率增加 10 倍……10 dBm 等于 10 mW,20 dBm 等于 100 mW,30 dBm 等于 1000 mW,依此类推。每 3 分贝大约是之前功率的两倍,所以 30 dBm 是 1000 mW,如果我们增加 3 dBm,那么我们可以将功率加倍,这样 33 dBm 大约等于 2000 mW。每3分贝大约是

先前的功率,所以30 dBm1000 mW,如果我们添加3 dBm,那么我们可以将功率加倍,这样33 dBm大约等于2000 mW

现在,注意。

在此处输入图片说明

现在请注意,我将数字更改为33。当我们在这里完成时,当我将我的监管域更改为BO 时,我可以将 my 设置txpower33

  • 现在先按Ctrl+ X,然后按Y,最后按 ,在完成后保存更改Enter

现在您需要将我们的旧监管文件与您下载的文件交换。仍在wireless-regdb目录中时,只需输入命令make

您会注意到该目录中现在有一些新文件。这很好。您regulatory.bin在此目录中的文件现在需要替换为旧文件。

首先导航到真实regulatory.db的位置。

cd /usr/lib/crda
Run Code Online (Sandbox Code Playgroud)

为了以防万一(推荐),让我们也备份旧的。

mv regulatory.bin regulatoryOLD.bin
Run Code Online (Sandbox Code Playgroud)

现在让我们引入新的。返回到我们新的regulatory.bin 目录,让我们复制它并验证它在那里。

cd {path to your new regulatory.bin}
cp regulatory.bin /usr/lib/crda/regulatory.bin
cd /usr/lib/crda
ls
Run Code Online (Sandbox Code Playgroud)

验证 现在我们有了新的regulatory.db,但它还不是有效的。返回到 wireless-regdb 目录,您会注意到您有一些扩展名为 .pem 的文件。将所有以 a 结尾的文件复制.pem到您下载crdapubkeys. 这些是 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
Run Code Online (Sandbox Code Playgroud)

并验证:

cd ~/Desktop/crda-1.1.3/pubkeys
ls
Run Code Online (Sandbox Code Playgroud)

最后,现在从您所在的目录返回下载的crda目录并安装这只小狗。

cd ..
make
make install
Run Code Online (Sandbox Code Playgroud)

你应该看到类似的东西。 在此处输入图片说明

如果是这样,重新启动: sudo reboot

重启后:

iw reg set BO
iwconfig wlan0 txpower 33
Run Code Online (Sandbox Code Playgroud)

  • john_s 有一个英特尔卡的稳定性问题,而不是无线电源的问题(XY 问题 http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)但是,您的答案是这个问题的最佳答案,它仅适用于高功率天线,但您的答案值得奖励。 (3认同)

wie*_*oma 7

您正在尝试提高传输功率,但这在法律和技术上都受到限制。无线传输遵守 CRDA 规则,简单地说就是一个描述允许的最大传输功率的列表。您的设备/操作系统有一个国家代码,因此知道该怎么做。如果没有国家/地区代码,则它以始终可以安全使用的通用值运行。

还有更多:某些卡甚至在技术上受到限制。它们具有内置的固定国家/地区代码,并且无论您尝试什么,它们都无法使用更高的功率。

我也有一张英特尔无线网卡,无论我尝试增加它,Tx 功率始终为 16。