Ubah Kode Negara Kartu Nirkabel Mac OS X

16

Saya mengalami masalah saat menyambung ke router nirkabel menggunakan Mac OS X yang ada di saluran 13. Ini karena ada beberapa router lain di dekatnya yang menyiarkan kode negara AS . Satu-satunya cara saya menemukan sejauh ini, adalah untuk setiap kali pergi ke router dan restart komputer.

Saya telah meminta google dan tampaknya merupakan campuran dari orang-orang yang berpikir bahwa itu adalah pengaturan perubahan lokal, atau diperbaiki di firmware router. Keduanya saya terbukti salah. man ifconfig juga belum terlalu mencerahkan.

Adakah yang tahu cara lain untuk memaksa kartu menggunakan Kode atau saluran negara yang berbeda? Saya lebih suka tidak berubah ke saluran lain, karena ada banyak gangguan di dekat (ditunjukkan dengan KisMAC).

Terima kasih


Suntingan

Ditemukan

/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport

Yang tampaknya memungkinkan saluran arbiter diatur pada kartu, tetapi bukan kode wilayah. Ini sepertinya tidak berpengaruh.

Ranting
sumber
Saya tahu Anda tidak ingin mengubah saluran, tetapi setelah membaca jawaban di sini, bagi saya sepertinya solusi paling sederhana, paling tidak retas.
wjandrea

Jawaban:

6

802.11d adalah protokol yang digunakan titik akses nirkabel untuk menyiarkan (antara lain) domain pengaturan (yaitu kode negara) di mana ia seharusnya beroperasi. Tampaknya tidak ada aturan yang jelas untuk apa yang harus dilakukan ketika berbagai peralatan menyiarkan informasi domain peraturan yang saling bertentangan.

Solusi ideal adalah dengan menonaktifkan / mengganti / mengkonfigurasi ulang peralatan yang menyiarkan informasi yang salah.

Saya menemukan utas Diskusi Apple (kuno) yang menunjukkan bahwa menunjukkan bahwa perangkat keras AirPort Mac akan menggunakan kode negara pertama yang didengarnya setelah dinyalakan atau dibangunkan dari tidur. Posting selanjutnya di utas (pada halaman kedua ) menunjukkan bahwa itu cukup untuk hanya mematikan / pada perangkat keras AirPort itu sendiri dan bukan keseluruhan sistem. Beberapa orang melaporkan keberhasilan menggunakan skrip untuk berulang kali mematikan antarmuka AirPort (menggunakan networksetup) hingga terjadi kondisi yang diinginkan (seperti yang dilaporkan oleh system_profiler).


Berdasarkan TA25972 , tampaknya peralatan yang lebih lama (mungkin model yang tidak mendengarkan informasi 802.11d) bahkan mungkin tidak dapat mengganti “kode negara”.

Chris Johnsen
sumber
Sayangnya saya tidak memiliki akses ke router nirkabel yang menyiarkan kode negara yang salah. Saya telah melihat utas diskusi itu sebelumnya, tetapi ruangan tempat saya berada cukup jauh dari router yang benar dan setiap reboot tampaknya menemukan router broadcasting AS. Menariknya, KisMAC mengatakan dapat mendeteksi router di saluran 13, bahkan ketika kode negara diatur ke AS. Jadi saya mungkin melihatnya nanti.
Twig
1
Saya telah memeriksa ini lagi hari ini dan KisMAC dapat menemukan router saya dan mengidentifikasi bahwa itu ada di saluran 13 meskipun memiliki kode negara sebagai AS dan 13 tidak ada dalam daftar saluran yang didukung
Twig
5

Saya punya masalah ini, dan saya menyelesaikannya!

Yang ingin saya lakukan adalah menonaktifkan fungsi suar 802.11d. Ini tidak mungkin dilakukan dalam pengaturan apa pun yang tersedia di Mac OS X.

Namun Anda dapat menambal biner driver kartu jaringan berpikir kode negara selalu X2.

Jadi ternyata, apa yang harus saya lakukan adalah mengubah / menambal biner driver jaringan dengan string 0x81 0x78 0x30 0x6B 0x10 0x00 0x00 0x0F 0x85ke 0x81 0x78 0x30 0x6B 0x10 0x00 0x00 x90 0xE0. Ini memaksa pengemudi untuk menggunakan kode negara «X2» suar apa pun yang sedang dikirim, sehingga tidak akan pernah berubah.

Anda bisa mengubahnya dengan utilitas pengeditan hex atau menyalin dan menempelkan satu-liner yang sangat berguna berikut dalam aplikasi terminal:

sudo perl -pi -e 's|\x81\x78\x30\x6B\x10\x00\x00\x0F\x85|\x81\x78\x30\x6B\x10\x00\x00\x90\xE9|' /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4360.kext/Contents/MacOS/AirPortBrcm4360 && sudo touch /System/Library/Extensions/

Solusi ini berfungsi untuk Mac Book Pro Retina 2013.

Eirik
sumber
2
Untuk MBP lain, Anda dapat menemukan driver mana yang perlu ditambal dengan perintah:sudo kextstat | grep AirPort
Stephen Connolly
Saya mendapat pesan tentang kext tidak valid. File yang dikembalikan dan menyentuh dir.
k06a
Bagaimana jika Anda ingin kode negara menjadi ES?
Fran Marzoa
Harus menonaktifkan SIP pada 13 "Macbook Pro akhir 2011 untuk melakukan perubahan. Meski begitu, itu tidak berhasil bagi saya. :(
GAM
tidak berfungsi .. Saya dapat: Tidak dapat menghapus /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4360.kext/Contents/MacOS/AirPortBrcm4360: Operasi tidak diizinkan, melompati file.
user426132
1

Solusi termudah untuk kode negara yang saling bertentangan - MAC Anda mengambil kode negara yang salah dari router penyiaran 'terdekat' ..... jadi jika salah satu tetangga dekat Anda memiliki kode negara yang salah, router Anda sendiri berasumsi bahwa itu salah 'negara - dan itu mengacaukan koneksi internet Anda - SOLUSI - dapatkan router lama yang tidak lagi Anda gunakan - dan cukup tancapkan ke catu daya dan letakkan di dekat router langsung Anda ..... pastikan router lama Anda set-up dengan kode negara yang benar tetapi JANGAN sambungkan ke internet. Kemudian MAC Anda akan mengambil kode negara dari router 'dummy' ini dan mengadopsi kode negara yang benar ..... masalah terpecahkan. Ini tampaknya bekerja untuk saya, dan saya telah disadap dengan masalah ini begitu lama .....

Kebetulan, ini memecahkan salah satu masalah saya - tetapi jika ada yang tahu cara mengalahkan Great Firewall dan memecahkan masalah latensi tinggi acak ketika menggunakan VPN yang akan menjadi bonus ........ bersyukurlah Anda tidak bekerja di China ..... internetnya jahat.

Tempat menyimpan bahan makanan
sumber
1

Jika Anda menggunakan driver AirPortBrcm4331 di El Capitan:

  1. restart dalam mode Pemulihan (CMD + r saat boot), buka terminal dan jalankan csrutil disable
  2. restart, buka terminal dan jalankan
    • 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/
  3. restart dalam mode Pemulihan (CMD + r saat boot), buka terminal dan jalankan csrutil enable
primianoC
sumber
0

Saya memiliki masalah yang sama dengan router wifi saya tetapi ketika saya mengatur router ke 5 ghz dan saluran ke masalah otomatis diselesaikan.

Peter Boocock
sumber
Bagaimana cara mengatasinya ?, apakah kode negara berubah?
Ruskes
Tidak ada Buscar, kode negara pada perangkat wifi di sekitar saya tidak berubah, setidaknya sejauh yang saya tahu, segera setelah saya bertukar dari 2,4 GHZ ke 5 GHZ dan mengatur router saya untuk secara otomatis memilih saluran terkuat yang bisa polling, saya menemukan masalah teratasi dan jika saya menukar kembali ke 2,4 GHZ maka kode negara asing terpotong lagi dan terbukti menjadi masalah dengan kartu wifi internal iMac saya mendapatkan koneksi ke Internet. Alat Diagnostik Wi-Fi menyarankan masalah kode negara. Ditukar kembali ke 5GHZ dan pilih otomatis saluran terbaik yang dapat dipecahkan dan masalah dihilangkan.
Peter Boocock
0

Saya menemukan solusi yang agak aneh. Saya mencoba semua solusi yang muncul dari Google, tidak ada yang berhasil tetapi saya melihat sebuah artikel yang menyebutkan KisMAC dapat melihat saluran 13. Menginstalnya dan kemudian tiba-tiba kode negara saya diubah dari AS ke X3 dan sekarang saya dapat terhubung di saluran 13.

Shaun
sumber
-1

Yang harus saya lakukan pada pertengahan 2010 MacBook Pro saya adalah mengubah nama kext dari AirPortBrcm4360 menjadi AppleAirPortBrcm43224 dan saya akhirnya mendapatkan lokasi saya dengan benar!

miha
sumber