Freeze in „Internet-Stack“ mit Lion in Hot Spot

gKar

Maunzenapfel
Registriert
25.06.08
Beiträge
5.362
Ich habe neuerdings ein eigenartiges Problem unter Lion:

Bei meinem Arbeitgeber gibt es einen WLAN-Hotspot, ein unverschlüsseltes WLAN, das zunächst alle HTTP-Anfragen auf eine Login-Seite umlenkt und andere Anfragen nicht beantwortet. So weit, so gut.

Was nun passiert, ist folgendes: Wenn ich mein MacBook hochfahre, hängen sich gewisse Programme beim Internet-Zugriff auf, insbesondere Safari lässt sich nicht starten (Icon hüpft ewig im Dock, laut Aktivitätsanzeige reagiert er nicht), Mail friert ein, nachdem es seine Fenster geöffnet hat, und der iDisk-Sync dreht ewig und lässt sich nicht abbrechen.
Firefox dagegen funktioniert. Damit kann mich mich auch am Hotspot einloggen, und daraufhin funktionieren auch Apps wie DropBox wieder. Safari, Mail, iDisk hängen weiterhin (und hängen sich auch neu auf, wenn man ihre Prozesse beendet und neu startet), und auch andere Apps (wie mein SVN-Client Cornerstone) funktionieren nicht.

In der Konsole sehe ich nichts Auffälliges. Ich habe versucht, mit der Aktivitätsanzeige einen der hängenden Prozesse zu analysieren, daraufhin hängte sich aber auch die Aktivitätsanzeige auf und reagierte nicht mehr.

Nun kommt aber erst der für mich fast unfassbare Punkt:
Wenn mich alle Apps abschieße und den User mit Cmd-Q auslogge und neu anmelde, besteht das Problem weiterhin. Andererseits scheint es Useraccount-lokal zu sein, denn wenn ich meinen Admin anmelde, kann der problemlos Safari benutzen. Wie kann ein Problem im User Account bestehen und dennoch einen Logoff überdauern?

Was geht: Mit Safari am Hotspot einloggen und Mac komplett neu booten. Aber eine elegante Lösung ist das auch nicht – vor allem, da man das ja nach jedem längeren Stand-By wiederholen muss.

Ich werde die Tage sicher noch weiter experimentieren, aber hat vielleicht irgendjemand hier eine Idee, was es sein könnte? Könnte es 3rd-Party-Applikationen geben, die das Problem auslösen? Oder könnte es vom iDisc-Sync verursacht werden. Was gibt es überhaupt für so derart zentrale Funktionen im Internet-Zugang, dass ein Fehler viele Programme auf einmal betrifft, aber auch nicht soooo zentral, dass gleich alle Internet-Zugriffe beeinträchtigt werden, sondern offenbar nur eine Teilmenge der Programme? Für Ideen bin ich jederzeit dankbar.

Thx,
gKar
 
Hallo Gkar,

ich hatte auch so ähnliche Probleme.
ich gehe davon aus das du die diversen Caches gelöscht hast.
Danach legst du ein neue Umgebung im Netzwerk an.
Da die Umgebung sich ja beim ausloggen nicht verändert, würde das auch die einwandfreie Funktion als Admin erklären.

Gruß
Flyer
 
Hi Flyer,

erstmal danke für Deine Antwort.
Safari-Caches sind weitgehend gelöscht, ja.
Ich habe nun mal probehalber eine neue Umgebung angelegt. Ein bestehendes Problem behob sie nicht. Auch ein Neu-Booten mit der neuen Umgebung änderte nichts am Problem.

Wenn ich mich richtig erinnere, kam früher auch mal ungefragt ein (Webkit-)Fenster zum Login, das passiert nun nicht (mehr).
Irgendwas bleibt hängen, und das scheint in einer zentralen und viel genutzten, aber nicht unbedingt benötigten Library zum Netzwerk-Zurgriff zu liegen, die durch von anderen Plattformen portierter Software wie Firefox und DropBox nicht benutzt wird.

Man könnte zwar mal probeweise einen neuen Benutzeraccount anlegen und schrittweise einrichten / Software nachinstallieren, um zu sehen, ob z.B. nach Installation einer bestimmten Software erstmals dieser Fehler auftritt. Aber da habe ich derzeit keine Zeit für.
 
Irgendwas bleibt hängen, und das scheint in einer zentralen und viel genutzten, aber nicht unbedingt benötigten Library zum Netzwerk-Zurgriff zu liegen, die durch von anderen Plattformen portierter Software wie Firefox und DropBox nicht benutzt wird.

Probier's mal mit dem mDNSResponder.
Um den in der Aktivitätsanzeige zu sehen, musst du "Alle Prozesse" anzeigen.

Isser's?
 
Ein Abschießen des mDNSResponders ändert nichts am Problem, falls Du das meinst.
 
Ich hatte mal ein ähnliches Problem. Bei mir hat der Hotspot allerdings auch die DNS Anfragen abgefangen.
Das wiederum hat den mDNSResponder völlig verrückt gemacht.
Auch bei mir funktionierte es jedoch mit FF (der löst anders auf als die OSX-Mitbringsel - ich glaube der benutzt direkt die resolv.conf).
Nachdem ich mich mit FF am Hotspot angemeldet hatte, funktionierte alles andere, z.B. Saftfari, immer noch nicht.
Erst nachdem ich den mDNSResponder abgeschossen hatte, lief alles wie gewohnt...

...bis mich der Hotspot wieder rausgeschmissen hat. ;)

Aber auch mal gut, wenn der nicht Schuld ist. :)
 
Tja, schade, dass das nicht die Lösung brachte. Auf jeden Fall auch Dir danke für die Antwort.

Morgen bin ich wieder regulär im Büro, dort steht noch ein iMac. Ich glaube, ich werde damit dasselbe Szenario mal testen. Wenn das Problem nur beim Notebook auftreten sollte, lässt sich vielleicht ein Unterschied eingrenzen, oder zumindest könnte man dann davon ausgehen, dass es sich lohnen könnte, das Nutzerkonto neu einzurichten.
 
Update: Mein iMac hat diese Probleme nicht. Es ist also kein grundsätzliches Problem z.B. einer Unverträglichkeit der aktuellen Lion-Version mit dem Hotspot. Auch kein grundsätzliches Problem mit meiner installierten und beim Booten startenden Software oder von Plugins (vermutlich, zumindest meine, ich dass beide Rechner ziemlich ähnlich ausgestattet sind).

Hilft mir noch nicht optimal weiter und ist auch leider die falsche Permutation: Beim iMac wär' das Problem weniger schlimm, da der eh immer am LAN-Kabel hängt. Beim Notebook bin ich doch ab und zu aufs WLAN angewiesen.Mal sehen, wann ich Zeit finde, mich um nähere Untersuchungen zu kümmern.


[UPDATE]Zu früh gepostet! Nachdem die WLAN-Verbindung schon wieder gegen eine LAN-Verbindung ausgetauscht war, hängte sich auf dem iMac etwas später doch auch alles auf! Ich habe den Eindruck, dass das mit dem Anspringen des iDisk-Syncs passiert ist, und das somit auch der iDisk-Sync verantwortlich für die Hänger sein könnte.[/UPDATE]
[UPDATE2]Abschalten des iDisk-Syncs hilft aber auch nicht, Problem besteht weiterhin :-([/UPDATE2]

Falls noch jemand eine zündende Idee haben sollte, immer her damit ;-)
 
Zuletzt bearbeitet:
Wie kann ein Problem im User Account bestehen und dennoch einen Logoff überdauern?
Ganz einfach: Ein User-bezogener LaunchAgent, der sich bei jedem Einloggen aktiviert oder ein LaunchDaemon, der von einem Programm in den Anmeldeobjekten des Users aktiviert wird. Beides würde auch erklären, warum es beim Admin-Account funktioniert und beim normalen User nicht.
Also schau mal in ~/Library/LaunchAgents, in /Library/LaunchAgents (falls Du einige Programme nur als User benutzt und nicht als Admin) und in Systemeinstellungen/Benutzer & Gruppen/Benutzer/Anmeldeobjekte.

Falls Du iCloud nur mit dem Benutzer verwendest und nicht mit dem Admin-Account, könnte auch der ApplepushserviceDaemon der Übeltäter sein.
 
  • Like
Reaktionen: gKar
Hmm, bisher ging ich davon aus, dass User-LauchAgents beim Ausloggen beendet (und im Zweifel auch gekillt) werden. Falls ein solcher aber tatsächlich die Session überdauern könnte und nach dem erneuten Login weiterhin hängt, würde das das Verhalten erklären.

Es scheint wirklich an einem User-LauchAgent zu liegen:
Ich habe gerade probehalber zwei davon rausgeworfen: Safari-Bookmark-Sync und Google-Update-Agent. Nun scheint das Problem nicht mehr zu bestehen. Für genauere Eingrenzung muss ich erst warten, bis die Hotspot-Sitzung abgelaufen ist (keine Ahnung, wie man sich da manuell ausloggt), um das Problem erneut reproduzieren zu können.

Aber im Moment bin ich frohen Mutes, dass wirklich einer der beiden Agents der Übeltäter ist. Danke für den entscheidenden Denkanstoß.

[EDIT]
Verd*** Mist! Zu früh gefreut :-c
Jetzt besteht das Problem wieder, selbst wenn ich alle existierenden LaunchAgents des Users rausschmeiße. Keine Ahnung, warum das vorhin mal funktioniert hat. Bleiben noch die "höheren" Agents und Daemons. Aber für heute hab' ich erstmal keine Lust mehr :-(
[/EDIT]
 
Zuletzt bearbeitet:
Du hast doch geschrieben, dass das Problem im Admin-Account nicht besteht, sondern immer nach dem Einloggen im normalen User-Account auftritt. Das bedeutet doch nicht, dass das Problem auch nach dem Ausloggen weiterbesteht, sondern dass nach jedem Einloggen der User etwas anstösst, was zum Problem führt.
 
Ich bin mir schon sicher, dass das Problem nicht beim erneuten Login erneut angestoßen wird, sondern nur vom vorherigen fortbesteht. Und zwar aufgrund der eigentlich im ersten Post schon geschilderten Beobachtung. Ich hole mal etwas aus:

Wenn man die WLAN-Verbindung zum Hotspot aufbaut (offen, keine Verschlüsselung), dann ist zunächst nur Port 80 (HTTP) offen, Requests an andere Ports „verhungern“. Versucht man aber, per HTTP eine Verbindung zu irgendeinem Webserver aufzubauen, wird man auf eine Hotspot-Login-Seite umgelenkt. Loggt man sich dort ein, wird eine zeitlich limitierte Session geöffnet. Danach sind dann alle wesentlichen Ports offen und „mit dem Internet verbunden“.

Was ich nun beobachtet hatte, ist Folgendes:
Beim ersten Herstellen der WLAN-Verbindung bleiben bestimmte Programme dauerhaft hängen (also wohl eher ein Framework, auf das die Programme zurückgreifen) und erholen sich auch nach Login in den Hotspot nicht.
Nun logge ich mich mit einem nicht betroffenen Webbrowser (Firefox) aber ein und öffne somit eine Session und stelle die Internetverbindung her.
Wenn ich dann reboote, funktioniert alles. Da die Hotspot-Session noch läuft und das WLAN sofort mit dem Internet verbunden wird, ist das auch eigentlich kein Wunder.
Wenn ich aber statt komplett zu rebooten einfach nur den User ab- und wieder anmelde, besteht das Problem weiter. Daraus schließe ich, dass das Problem nicht bei jedem Login neu auftritt (nach Reboot und Neu-Login ja eben nicht), sondern dass es noch vom vorherigen Login stammt.
Nun wäre normalerweise der Schluss naheliegend, dass eine grundlegende und vom User-Login unabhängige Funktion für alle User hängt. Das ist aber anscheinend auch nicht der Fall, weil ich mich einfach als User aus- und als Admin einloggen kann und damit keine Fehlfunktion auftritt: Das Problem ist auf den Useraccount beschränkt.

Verstehst Du nun, was mich so irritiert?
 
Wenn Du Dich aus dem nicht richtig funktionierenden User-Account abmeldest und Dich danach als Admin anmeldest (ohne Reboot dazwischen), bist Du dann als Admin sofort mit dem Hotspot verbunden und für’s Internet freigeschaltet oder musst Du Dich dann noch mal am Hotspot mit Deinen Zugangsdaten anmelden?
 
Wenn Du Dich aus dem nicht richtig funktionierenden User-Account abmeldest und Dich danach als Admin anmeldest (ohne Reboot dazwischen), bist Du dann als Admin sofort mit dem Hotspot verbunden und für’s Internet freigeschaltet
Genau so ist es.
 
Dann vermute ich, dass der Saved Application State der Verursacher des Problems beim Wiedereinloggen in den User-Account ist. Da startet Safari ja wieder genauso wie zum Zeitpunkt des Ausloggens. Bringt Dich der Lösung des Grundproblems aber wahrscheinlich auch nicht weiter.

Kannst ja mal im Terminal defaults write com.apple.Safari ApplePersistenceIgnoreState YES ​eingeben. Vielleicht ist dann schon mal das Wiedereinlogg-Problem weg.
 
Ich dachte, wenn ich einen Prozess "sofort beende" gibt es ohnehin keinen Saved Application State. Setzt der nicht ein reguläres Beenden der App voraus?
 
Eben, d.h. es gibt im User-Account keinen funktionierenden Saved Application State, da von der letzten Sitzung nix gespeichert wird und die vorletzte Sitzung ja diejenige vor dem Anmelden war.

Kannst Du Dich denn als Admin am Hotspot anmelden, ausloggen, als User einloggen und dann das Internet nutzen?

Ansonsten wäre es hier vielleicht doch mal hilfreich die Konsolenmeldungen zu posten, die aus der Zeit eines ersten Anmeldeversuchs mit einem User-Account stammen.
 
Es ist schon eigenartig: Umgekehrt hat's gerade nicht funktioniert, d.h. ich habe mich als erstes im Admin-Account eingeloggt, dort per Firefox am Hotspot angemeldet und dann versucht, mit als User anzumelden – Problem besteht dort weiterhin.

Im Admin-Account fährt Safari aber immerhin hoch (reagiert noch), lädt nur keine Seiten. In dem Fall konnte ich Safari mit Option-Cmd-Q so beenden, dass kein Saved Application State angelegt wurde. Als ich ihn danach neu startete, funktionierte er.
Im User-Account geht das so nicht: Safari reagiert nicht mehr, sobald ich versuche, ihn zu starten. Ein kontrolliertes Beenden mit Option-Cmd-Q hilft nichts. Die Einstellung IgnoreState YES ändert nichts daran. (Wenn ich die richtig lese, müsste sie doch eigentlich bewirken, dass ein ggf. persistenter Application State einfach ignoriert würde und Safari folglich genauso starten, als sei kein Saved Application State vorhanden, oder?). Auch ein manuelles Löschen von ~/Library/Saved Application State/com.apple.Safari.savedState behebt das Problem nicht.

(Das größte Ärgernis ist, dass das alles so viel Zeit kostet und ich auch nur im Büro damit experimentieren kann.)

In der Konsole finde ich überhaupt nichts Aufschlussreiches. Anders als im User-Account hat aber Safari im Admin-Account einen Crash Report erzeugt, der knapp 1 MB groß ist. Falls jemand reinschauen will, lade ich ihn hier mal gezippt hoch.
 

Anhänge