Mac OS Yosemite Yosemite in 2.4GHz 802.11n zu 40MHz channel width zwingen

thorstenhirsch

thorstenhirsch

Aktives Mitglied
Thread Starter
Dabei seit
17.03.2015
Beiträge
1.205
Reaktionspunkte
854
Hallo. Mein Kenntnisstand ist, dass 40MHz breite Kanäle (HT40) im 2.4GHz-Band beim 802.11n-Standard nicht generell verboten sind, sondern dann erlaubt sind, wenn man - grob gesagt - keine Nachbarn hat. Geräte anderer Hersteller unterstützen das auch, jedoch nicht mein MBP (MID 2014). Es scheint auf Ebene des Treibers oder des Apple80211 Frameworks eingeschränkt zu sein.

Dieser Beitrag macht mir jedoch Hoffnung, dass man OS X mittels airport doch dazu überreden kann, HT40 statt HT20 zu benutzen. Ich habe folgende Varianten versucht, jedoch alle ohne Erfolg:

Code:
airport --channel=4,1
airport --channel=4,+1
airport --channel="4,1"
airport --channel="4,+1"
airport --channel=4+
airport --channel=+4

Jedoch alle ohne Erfolg. Laut diesem Beitrag ist es in einigen Channels nicht möglich, aber im 11er hatte er Erfolg. Ich hab' es nach dem 4er ebenfalls im 11er probiert, aber auch dort keinen Erfolg.

Das MBP scheint jedoch prinzipiell Kanäle mit HT40 zu erkennen, denn...
Code:
[FONT=Menlo]system_profiler SPAirPortDataType
[/FONT][FONT=Menlo]...
Channel: 4,+1
...[/FONT]

Nun hab' ich jedoch keine Idee mehr, welche Ansatzpunkte Yosemite noch bietet.
 
"...mittels Airport"

Was willst du sonst im Zusammenhang mit WLAN nutzen? SATA?
 
>Mein Kenntnisstand ist, dass 40MHz breite Kanäle (HT40) im 2.4GHz-Band beim 802.11n-Standard nicht generell verboten sind, sondern dann erlaubt sind, wenn

Das ist so weit auch richtig, allerdings entscheidet das die Firmware des WLAN-Routers, kein Mac oder dessen Benutzer.
"Merkt" der WLAN-Router das es möglich ist die Bandbreite zu verdoppeln, weil Platz genug ist ohne andere zu Stören, macht er es.

Du kannst da am Mac verbiegen was du willst.

Bietet dein WLAN-Router keine 40 Mhz breiten Kanäle an, sind eben keine da.

Ehrlich gesagt erschließt es sich mir auch nicht, wie oder warum dann irgend eine Manipulation am Mac, 40 Mhz Bandbreite aus der Luft zaubern sollte um dann eventuell von hinten den Router zu überzeugen das er jetzt mit 40 Mhz zu arbeiten hat..
 
@Olivetti: ...und, kann ich da irgendwie eingreifen? Programmatisch? Es ist ein PrivateFramework.

@trixi: Nö, nur Daten schneller durch mein WLAN transferieren als mit den derzeitigen 130MBit/s. Mit airport meinte ich übrigens nur das Programm, keine Hardware.

@Stargate: Der WLAN-Router kann's und bietet es auch an, wie ich in meinem Beitrag dargelegt habe. Der Mac könnte es theoretisch nutzen, ist aber von Apple soweit eingeschränkt, dass er's nicht automatisch tut, also will ich ihn dazu zwingen.
 
>@Stargate: Der WLAN-Router kann's und bietet es auch an, wie ich in meinem Beitrag dargelegt habe. Der Mac könnte es theoretisch nutzen, ist aber von Apple

Ah so. Ich hatte das Anfangs auch mal mit irgend einen Mac der partou nicht die volle Bandbreite von einer Apple Basis nutzen wollte.
Damals hatte es gereicht das WLAN auf dem Mac neu einzustellen, also die alte Netzwerkumgebung zu löschen, eine neue Umgebung anzulegen.

Dort das gleiche WLAN von der gleichen Basis erneut eingetragen.
 
@Olivetti: ...und, kann ich da irgendwie eingreifen? Programmatisch? Es ist ein PrivateFramework.

Ja, wenn du einen eigenen Treiber bzw. evtl. auch noch die Airport-Kartenfirmware schreibst. Ansonsten ist mir bisher kein Weg bekannt.

Ich verstehe nicht, was du diesbzgl. mit private framework meinst.
 
Ach, damit meinte ich nur, dass Apple80211 unter /System/Library/PrivateFrameworks liegt und nicht unter /System/Library/Frameworks. Ich beziehe mein spärliches Wissen über OS X aus dem Buch "Mac OS X and iOS Internals" von Jonathan Levin - darin wird explizit zwischen den privaten und den öffentlichen Frameworks unterschieden, weshalb ich dachte, dass es wichtig sein könnte.

Naja, ich hatte gehofft, dass nicht der Treiber die Sache einschränkt, sondern Apple80211 ...und ich bilde mir ein, dass ich darauf zumindest eher Einfluss nehmen kann als auf den (proprietären) Broadcom-Treiber. Ein bisschen Hoffnung macht mir:
Code:
strings Apple80211 | grep -i width
BANDWIDTH
HT_STA_CHAN_WIDTH
CHANNEL_WIDTH
Und da Apple80211 eine "Mach-O 64-bit dynamically linked shared library x86_64" ist, kann ich da doch vielleicht per AppleScript, Objective-C oder Swift dran um dann aufzurufen "channel = getCurrentChannel; channel.setChannelWith('HT40');" (oder so ähnlich). Ich hab' jedoch noch nie was für OS X gecodet und bin auch nicht in diesem Apple-Developer-Programm, daher sind das alles nur wage Vermutungen meinerseits.
 
Nichts anderes machst du ja mit dem "airport --channel=X,+1"-Befehl. Er bewirkt halt nur im 2,4 GHz-Band nichts.
Um festzustellen, wo das blockiert wird, müsste man die Sourcecodes einsehen (hier ist nur leider nicht das passende dabei) oder mit reverse engineering.
tongue.gif


Ich vermute, es wird schon in der Kartenfirmware blockiert und nicht im Treiber.
 
Zuletzt bearbeitet:
wie schnell ist denn dein bisheriges WLAN?

Das Wechseln aufs 40er Band würde nur Probleme, aber auch keine wirkliche Lösung bringen.
Was meinst du, warum es hierzulande Regulierungen gibt?
Eben dazu, dass nicht jeder da funkt wo er möchte oder kann...
 
Bei dir weiß ich oft nicht, ob das ironisch gemeint sein soll.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: thorstenhirsch
Zurück
Oben Unten