Mam problem z połączeniem się z routerem bezprzewodowym za pomocą Mac OS X, który jest na kanale 13. Jest tak, ponieważ w pobliżu jest inny router, który nadaje kod kraju w USA . Jedynym sposobem na to, jaki do tej pory znalazłem, jest za każdym razem iść do routera i ponownie uruchomić komputer.
Zapytałem google i wydaje się, że jest to mieszanka ludzi, którzy myślą, że to ustawienie regionalne go zmienia lub że jest to ustalone w oprogramowaniu routera. Oba okazały się błędne. man ifconfig również nie był zbyt pouczający.
Czy ktoś zna inny sposób zmuszenia karty do użycia innego kodu kraju lub kanałów? Wolałbym nie przejść na inny kanał, ponieważ w pobliżu jest dużo zakłóceń (pokazane z KisMAC).
Dzięki
Edycje
Znaleziony
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport
Który wydaje się pozwalać na ustawienie arbitralnego kanału na karcie, ale nie kodu hrabstwa. To nie wydaje się mieć żadnego efektu.
Odpowiedzi:
802.11d jest protokołem używanym przez bezprzewodowe punkty dostępowe do rozgłaszania (między innymi) domeny regulacyjnej (tj. Kodów krajów), w której ma działać. Wydaje się, że może nie istnieć jasna zasada postępowania w przypadku, gdy różne urządzenia nadają sprzeczne informacje dotyczące domeny regulacyjnej.
Idealnym rozwiązaniem byłoby wyłączenie / wymiana / ponowna konfiguracja sprzętu, który emituje nieprawidłowe informacje.
Znalazłem (stary) wątek dyskusji Apple, który wskazuje, że sprzęt Mac AirPort użyje pierwszego kodu kraju, który usłyszy po włączeniu lub wybudzeniu ze snu. Późniejsze posty w wątku (na drugiej stronie ) wskazują, że wystarczy tylko wyłączyć / włączyć sam sprzęt AirPort, a nie cały system. Kilka osób zgłosiło sukces za pomocą skryptu, aby wielokrotnie wyłączać i włączać interfejs AirPort (za pomocą
networksetup
), aż do uzyskania pożądanego stanu (jak zgłosiłsystem_profiler
).W oparciu o TA25972 wydaje się, że starsze urządzenia (prawdopodobnie modele, które nie nasłuchują informacji 802.11d) mogą nawet nie być w stanie zmienić „kodów krajów”.
źródło
Mam ten problem i rozwiązałem go!
Chciałem tylko wyłączyć funkcję sygnalizatora 802.11d. Nie można tego zrobić w żadnych dostępnych ustawieniach systemu Mac OS X.
Można jednak naprawić binarnie sterownik karty sieciowej, myśląc, że kod kraju to zawsze X2.
Najwyraźniej musiałbym zmienić / załatać binarnie sterownik sieci za pomocą łańcucha
0x81 0x78 0x30 0x6B 0x10 0x00 0x00 0x0F 0x85
do0x81 0x78 0x30 0x6B 0x10 0x00 0x00 x90 0xE0
. Zmusza to kierowcę do używania kodu kraju «X2» niezależnie od wysyłanego sygnału nawigacyjnego, więc nigdy się nie zmieni.Możesz to zmienić za pomocą narzędzia do edycji szesnastkowej lub skopiować i wkleić następujący bardzo przydatny jeden wiersz w aplikacji terminalowej:
To rozwiązanie działa na Mac Book Pro Retina 2013.
źródło
sudo kextstat | grep AirPort
Najłatwiejsze rozwiązanie dla sprzecznego kodu kraju - twój MAC odbiera nieprawidłowy kod kraju z „najbliższego” routera nadawczego ..... więc jeśli jeden z twoich bliskich sąsiadów ma nieprawidłowy kod kraju, twój własny router zakłada, że jest w tym „zły” „kraj - i to zakłóca twoje połączenie internetowe - ROZWIĄZANIE - zdobądź stary router, którego już nie używasz - i po prostu podłącz go do źródła zasilania i umieść w pobliżu routera na żywo ..... upewnij się, że twój stary router jest skonfiguruj właściwy kod kraju, ale NIE podłączaj go do Internetu. Następnie Twój MAC odbierze kod kraju z tego „fałszywego” routera i przyjmie prawidłowy kod kraju ..... problem rozwiązany. Wydaje się, że to działa dla mnie i tak długo miałem problem z tym problemem .....
Nawiasem mówiąc, rozwiązuje to jeden z moich problemów - ale jeśli ktoś wie, jak pokonać Wielką zaporę ogniową i rozwiązać problem losowo dużych opóźnień podczas korzystania z VPN, co byłoby dodatkową korzyścią ........ po prostu wdzięczny, że nie pracujesz w Chinach ..... jego internet jest zły.
źródło
Jeśli używasz sterownika AirPortBrcm4331 na El Capitan:
csrutil disable
sudo perl -pi -e 's|\x30\x6B\x10\x00\x00\x0F\x85\xEA|\xFF\xFF\x10\x00\x00\x0F\x85\xEA|g' /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4331.kext/Contents/MacOS/AirPortBrcm4331
sudo touch /System/Library/Extensions/
csrutil enable
źródło
Miałem podobny problem z moim routerem Wi-Fi, ale kiedy ustawiłem router na 5 Ghz i kanał na auto, problem został rozwiązany.
źródło
Znalazłem nieco dziwne rozwiązanie. Wypróbowałem wszystkie rozwiązania wymyślone przez Google, żadne nie działało, ale widziałem artykuł, w którym wspomina się, że KisMAC widzi kanał 13. Zainstalowałem go, a potem nagle mój kod kraju zmienił się z US na X3, a teraz mogę połączyć się z kanałem 13.
źródło
Wszystko, co musiałem zrobić na moim MacBooku Pro w połowie 2010 roku, to zmienić nazwę kext z AirPortBrcm4360 na AppleAirPortBrcm43224 i wreszcie udało mi się poprawnie ustalić swoją lokalizację!
źródło
https://github.com/alessandro893/MacOS-WLAN-Driver Może to pomóc, możesz poprosić autora o modyfikację kodu kraju w sterowniku OS X
źródło