iwconfig wlan0 txpower 30mW - nie działa

12

Chciałbym zwiększyć moc mojego adaptera bezprzewodowego, ale kiedy wejdę

sudo iwconfig wlan0 txpower 30mW

w terminalu, a następnie sprawdź za iwconfigpomocą. Widzę, że txpower jest nadal taki, jak kiedyś, zanim spróbowałem go zmienić.

Mój kontroler sieci to:

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

A oto ifconfigwynik, jeśli to pomaga:

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)

Jednak, tak na marginesie, sudo iwconfig wlan0 power offdziała, aby wlan0wyłączyć zarządzanie energią.

johann_ka
źródło
co mówi sudo iwlist txpower wlan0?
j0h

Odpowiedzi:

14

@ wie5Ooma, ma rację co do naruszenia prawa. ale o odpowiedzi na pytanie. Jak to idzie:

OSTRZEŻENIE Usunięcie wszystkich ograniczeń jest nielegalne w Stanach Zjednoczonych. Wynika to wyłącznie z powodów edukacyjnych, a jeśli zdecydujesz się je zastosować i złamać prawo, to twój wybór, a nie mój. Zachowaj ostrożność, wprowadzając to w życie. To jest wyłącznie do celów edukacyjnych!

  • Najpierw musimy użyć kilku pakietów:

    • python-m2crypto
    • libgcrypt11
    • libgcrypt11-dev
    • libnl-dev
  • Aby sprawdzić, czy są zainstalowane:

    dpkg -s python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
    
  • Jeśli nie, zainstaluj:

    apt-get install python-m2crypto libgcrypt11 libgcrypt11-dev libnl-dev
    
  • Teraz potrzebujesz bezprzewodowej regulacyjnej bazy danych CRDA oraz wireless-regdbnarzędzi do budowy bazy danych odczytywanej przez CRDA w celu zapewnienia domen regulacyjnych dla jądra Linux.

  • Przejdź do folderu pobierania i rozpakuj pliki.

Teraz jest interesująca część. To tutaj faktycznie możemy zmienić przepisy. Zmień katalog na wireless-regdbfolder, a tam znajdziesz plik o nazwie db.txt. To jest plik, który będziemy edytować. Rzućmy na to okiem:

more db.txt

więcej o db.txt

  • Teraz spójrzmy na kilka rzeczy tutaj. Spójrz na to, co podkreśliłem powyżej. Po pierwsze, zwróćmy uwagę na pierwszą pozycję ( country 00), która jest światową domeną regulacyjną i jest stosowana przede wszystkim. Kiedy więc włączysz system BackTrack, domena światowa zostanie najpierw zastosowana, a następnie możesz zmienić domeny regulacyjne stamtąd na inne kraje, takie jak kraj AM .

Drugą rzecz, którą podkreśliłem, która może osiągnąć maks. 20 dBm , trzecią rzecz, którą podkreśliłem, w paśmie 2,4 GHz . Jeśli chcesz zmienić wysokość, którą chcesz osiągnąć, jest to liczba, którą chcesz zmienić.

  • Na przykład zmieńmy zasady Boliwii *

    nano db.txt Przewiń w dół, aż znajdziesz kraj BO. wprowadź opis zdjęcia tutaj

  • Spójrz na to, co podkreśliłem. To jest liczba, którą chcemy zmienić.

Jeśli twoja karta może wzrosnąć do 2000 mW , to zmień tę liczbę na 33 , co oznacza 33 dBm , czyli około 2000 mW . Numer, który zastępujesz, jest w decybelach.

Nie jestem pewien co do Twojej karty, niektóre karty bezprzewodowe, takie jak AWUS036NHA, mogą utknąć w danym kraju i nie można ich zmienić z tego kraju. W takim przypadku dowiedz się, w jakim kraju według karty znajduje się, i zmień konfiguracje tego kraju.

Szybkie zrozumienie DECIBEL :

Co 10 decybeli jest 10x wzrost mocy począwszy od dnia 1 dBm równą 1mW ... 10 dBm wynosi 10 mW , 20 dBm wynosi 100 mW , 30 dBm wynosi 1000 MW , i tak dalej. Szybkie zrozumienie DECIBEL :

Każde 10 decybeli oznacza 10-krotny wzrost mocy, począwszy od 1 dBm równego 1 mW ... 10 dBm równa się 10 mW, 20 dBm równa się 100 mW, 30 dBm równa się 1000 mW i tak dalej. Każde 3 decybele jest w przybliżeniu dwukrotnie wyższe niż w przypadku poprzedniej mocy, więc 30 dBm to 1000 mW, jeśli dodamy 3 dBm, wówczas możemy podwoić moc, tak że 33 dBm jest w przybliżeniu równe 2000 mW. Co 3 decybele jest około dwukrotnie więcej niż

poprzednia moc, więc 30 dBm to 1000 mW , jeśli dodamy 3 dBm , wówczas możemy podwoić moc, tak że 33 dBm jest w przybliżeniu równe 2000 mW .

Teraz uważaj.

wprowadź opis zdjęcia tutaj

Zauważ, że teraz zmieniłem numer na 33 . Kiedy skończymy tutaj, kiedy mogę zmienić domenę regulacyjnego BO , mogę ustawić txpowerdo 33 .

  • Teraz zapisz zmiany, jeśli są wykonywane przez naciśnięcie najpierw Ctrl+ X, a następnie Y, wreszcie Enter.

Teraz musisz zamienić nasz stary plik regulacyjny na pobrany. Pozostając w wireless-regdbkatalogu, po prostu wpisz polecenie make.

Zauważysz, że masz teraz kilka nowych plików w tym katalogu. To jest dobre. twój regulatory.binplik w tym katalogu musi teraz zostać zastąpiony starym.

Najpierw przejdź do regulatory.dblokalizacji autentycznego .

cd /usr/lib/crda

Zróbmy też kopię zapasową starego na wszelki wypadek (zalecane).

mv regulatory.bin regulatoryOLD.bin

Teraz przynieśmy nowy. Wróć do katalogu naszego nowego pliku regulacyjnego.bin i skopiujmy go i sprawdźmy, czy tam jest.

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

Sprawdzanie poprawności Teraz mamy nasz nowy plik regulacyjny.db, ale nie jest jeszcze ważny. Wróć do katalogu wireless-regdb, a zauważysz, że masz pliki z rozszerzeniem .pem. Skopiuj WSZYSTKIE pliki z rozszerzeniem do .pemdo pobranego crdakatalogu w pubkeys. Są to pliki, których CRDA użyje do sprawdzenia, czy regulatory.binjest poprawny.

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

I sprawdź:

cd ~/Desktop/crda-1.1.3/pubkeys
ls

Na koniec przejdź teraz do katalogu, z którego wracasz do pobranego crdakatalogu i zainstaluj tego szczeniaka.

cd ..
make
make install

Powinieneś zobaczyć coś takiego. wprowadź opis zdjęcia tutaj

Jeśli tak, uruchom ponownie: sudo reboot

Po ponownym uruchomieniu:

iw reg set BO
iwconfig wlan0 txpower 33
amrx
źródło
3
john_s ma problem ze stabilnością karty Intel, a nie problem z zasilaniem bezprzewodowym (problem XY meta.stackexchange.com/questions/66377/what-is-the-xy-problem ) Jednak twoja odpowiedź jest najlepszą odpowiedzią na pytanie, będzie działać tylko w przypadku anten o dużej mocy, ale twoja odpowiedź zasługuje na nagrodę.
Helio,
@ j0h powiedział poniżej: Trik Boliwia powinien działać tylko wtedy, gdy db jest mniejszy niż 30. Jeśli spojrzysz na ustawienia boliwii, limit wynosi 30. jeśli chcesz przełączyć się na boliwię i przejść wyżej, musisz edytować i ponownie skompilować baza danych zawierająca ustawienia regionalne. dlaczego nie skorzystasz z USA, nie wiem, w bazie danych jest USA. spróbuj tego: null-byte.wonderhowto.com/how-to/... musisz jednak znaleźć rzeczywiste źródło crda. Znalazłem tę stronę na stronie podręcznika dla wireless.wiki.kernel.org/en/developers/Regulatory#crda
Helio
1
Gdzie jest plik regulacyjny.db? Na Ubuntu 16.04 nie mam nawet folderu / usr / lib / crda. Znalazłem go w folderze / lib / crda.
wordsforthewise
Nigdy nie stworzył dla mnie klucza linville.key.pub.pem.
wordsforthewise
Próbuję obniżyć txpower (w celu przetestowania) i nadal pozostaje on niezmieniony do 20dBm. Jakieś pomysły?
chefarov
6

Próbujesz zwiększyć moc transmisji, ale to podlega ograniczeniom zarówno prawnym, jak i technicznym. Transmisje bezprzewodowe przestrzegają zasad CRDA, które po prostu stanowią listę opisującą maksymalną dopuszczalną moc transmisji. Twoje urządzenie / system operacyjny ma kod kraju, dlatego wie, co robić. Jeśli nie ma kodu przeciwdziałającego, działa przy wartościach ogólnych, które są zawsze bezpieczne w użyciu.

Jest więcej: niektóre karty są nawet technicznie ograniczone. Mają wbudowany stały kod kraju i są skonstruowane tak, że nie mogą użyć wyższej mocy, cokolwiek spróbujesz.

Mam też kartę bezprzewodową Intel, a moc Tx wynosi zawsze 16, cokolwiek spróbuję ją zwiększyć.

wie5Ooma
źródło
Cześć wie5Ooma, zasadniczo nie chcę naruszać prawa i nie zamierzam specjalnie ustawiać adaptera bezprzewodowego na 30 wM. Jednak w systemie Windows wyświetlana siła sygnału, a także odczuwalna szybkość połączenia są znacznie lepsze i bardziej stabilne. Wszelkie inne wskazówki na temat tego, co mógłbym spróbować?
johann_ka
Teraz nieznacznie przesuwasz pytanie w stronę świata opartego na opiniach. Bez dowodów liczbowych naprawdę nie mogę stwierdzić, czy jest jakaś różnica między Windows a Linuksem, ponieważ nie używam Windowsa. Muszę się nad tym trochę zastanowić. Na marginesie: czy wiesz, że piszesz wM zamiast mW? Zatem najpierw powinna być mała litera M, a następnie wielka literówka W, mW, co oznacza miliwat.
wie5Ooma,
2

Może to być spowodowane tym, że przebywasz w kraju o ograniczonym prawie. Możesz zwiększyć moc poza swój lokalny limit, ale najprawdopodobniej będzie to łamać prawo . Dotyczy to tylko anten o dużej mocy .

METODA 1:

Otwórz terminal i skopiuj następujące polecenia:

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

Jeśli powyższa metoda daje następujący błąd, przejdź do METODY 2.

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

METODA 2:

Otwórz terminal i skopiuj następujące polecenia:

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

ŹRÓDŁO: Ta strona

Helio
źródło
1
Och, miałem na myśli sudo iwconfig wlan0 txpower 30mW. Nawet gdy robię sudo iwconfig wlan0 txpower 20mW zamiast 30mW, to nie działa.
johann_ka
Skąd wiesz, że to nie działa?
Helio
@ Helio: dzięki za powrót. W przypadku obu metod krok 2 sudo iw reg set B0wyświetla następujący komunikat o błędzie: niepoprawny ISO / IEC 3166-1 alpha2 Specjalne użyteczne wpisy inne niż alpha2: 00 Światowa domena regulacyjna
johann_ka
@ Helio: Myślałem, że mogę zobaczyć, czy to działa, po prostu wpisując iwconfig i sprawdzając liczbę za Tx-Power = NUMER TUTAJ dBm
johann_ka
1
Jest BOz O, jak BOlivia, a nie B-zero
Helio
2

Wpisz te polecenia, włączą AGG TX i mogą znacznie poprawić wydajność bezprzewodowych sieci N. Ten raport o błędach mówi, że wydajność spadła o 85% bez użycia11n_disable=8

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

Teraz wypróbuj swój komputer, tak jak normalnie. Jeśli sygnał jest nadal niski, to rozwiązanie prawdopodobnie nie jest rozwiązaniem dla twojego przypadku. W takim przypadku wystarczy ponownie uruchomić komputer, aby przywrócić dokonaną zmianę. Jeśli stanie się normalny i szybki, zrób to na stałe, wpisując następujący wiersz w terminalu:

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

Plik zostanie otwarty (może nie istnieć wcześniej). Na końcu pliku wklej następujący wiersz, a następnie zapisz:

options iwlwifi 11n_disable=8

Po zapisaniu po prostu wyjdź i uruchom ponownie.


Jeśli to nie zadziała, należy wymienić 11n_disable=8z 11n_disable=1i powtórzyć procedurę.

Helio
źródło
Cześć Helio, dzięki za to. Podczas wchodzenia pojawia sudo rmmod iwlwifisię następujący komunikat o błędzie: rmmod: ERROR: Module iwlwifi is in use by: iwlmvmCzy mogę dezaktywować iwlmvm?
johann_ka
Nie rozumiem, co ta odpowiedź ma wspólnego z pierwotnym pytaniem. Ta sztuczka „11n_disable” nie poprawia siły sygnału, a w sieciach 11n skutecznie zakłóca połączenie, ponieważ tutaj wyłączasz możliwości prędkości N, ograniczając w ten sposób prędkość do 11 g, czyli 54 Mb / s zamiast 150 lub w zależności od twojego sprzętu nawet 300 Mb / s.
wie5Ooma,
@ wie5Ooma masz powód, jednak poprawi to stabilność połączenia, a jeśli chodzi o szybkość, myślę, że nie będzie to wielka strata, ale to john_s, który będzie miał ostatnie słowo ;-)
Helio
@ john_s tak, możesz usunąć, iwlmvmjeśli jest załadowany. Użyj tego polecenia: sudo rmmod iwlmvm. Zaktualizowałem swój post.
Helio
1
Trik Boliwia powinien działać tylko wtedy, gdy db jest mniejszy niż 30. Jeśli spojrzysz na ustawienia boliwii, limit wynosi 30. jeśli chcesz przełączyć się na boliwię i przejść wyżej, musisz edytować i ponownie skompilować bazę danych, która zawiera ustawienia regionalne. dlaczego nie skorzystasz z USA, nie wiem, w bazie danych jest USA. spróbuj tego: null-byte.wonderhowto.com/how-to/... musisz jednak znaleźć rzeczywiste źródło crda. Znalazłem tę stronę na stronie podręcznika crda: wireless.wiki.kernel.org/en/developers/Regulatory#crda
j0h
1

Witam Osobiście używam Kali Linux 2 z kartą sieciową ALPHA awus036nh i używam metody 1 do zmiany mocy karty TX.

Dla tych, którzy mają problemy z zestawem reg BO , spróbuj zamiast tego użyć zestawu reg GY . Jest to dla mnie w pełni funkcjonalne, podczas gdy nie działa z BO! Mam nadzieję, że to pomoże!

ifconfig wlan1 down
iw reg set GY
iwconfig wlan1 txpower 30
ifconfig wlan1 up
Drelich
źródło
0

W Ubuntu 16.10 crda jest poniżej /lib/crda/. Aby skompilować nową „crda”, wykonaj:

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

Następnie przenieś wygenerowane pliki * .pem do pobranego katalogu crda:

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

Teraz skopiuj folder crda z powrotem z '/ usr / lib / crda' do domyślnej ścieżki w Ubuntu 16:

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

sudo reboot i iw reg set {country-code} .

Zastosowałem tę metodę, aby ustawić wifi tak, aby korzystało z zakresów częstotliwości i prawnych poziomów mocy przydzielonych amatorskiej służbie radiowej w moim kraju. Jest to ograniczone tylko do licencjonowanych amatorskich operatorów radiowych.

44–8
źródło