Wygląda na to, że moje złącze Ethernet Thunderbolt już dziś na dobre przestało się łączyć z routerem. W ciągu ostatnich kilku dni widziałem już kilkakrotnie „awarię” mojego połączenia Ethernet. Moja maszyna po prostu spadnie z sieci i nie będzie mogła wrócić do pracy bez ponownego uruchomienia. Zakładałem, że gdzieś jest jakiś dziwny błąd, być może wywołany pewną aktywnością sieci, ale ponieważ mogłem go rozwiązać ponownie, nie martwiłem się.
Teraz, gdy otwarcie System Preferences
pod Network
tylko widzę Status: Not Connected
message` dla adaptera Thunderbolt Ethernet. Używam MacBooka Pro Retina (początek 2013 r.) I AirPort Time Capsule (w nowszej wersji wieżowej 802.11ac). Próbowałem różnych rozwiązań, które można znaleźć w Internecie, ale żadne z nich nie działało.
Jestem pewien, że karta Ethernet Thunderbolt i kable sieciowe działają dobrze - podczas korzystania z MacBooka Air wszystko łączy się dobrze. Zdarza mi się też mieć drugą kartę Ethernet Thunderbolt, która wyświetla dokładnie te same problemy.
Jestem mniej lub bardziej przekonany, że port Thunderbolt na MBP również działa - podczas odprawy
System Report > Thunderbolt
widzę co najmniej teThunderbolt Bus
i aThunderbolt to Gigabit Ethernet Adapter
, które są wymienione jakoDevice Connected
. Nie mogę być tego jednak w 100% pewien, ale wygląda na to, że rozpoznaje, że podłączam ten adapter.Nie ma znaczenia, którego jednego z dwóch portów Thunderbolt używam, żaden z nich nie działa.
Czy istnieje dobry sposób na rozwiązanie problemów z łącznością Thunderbolt? Czy są jakieś konkretne ustawienia, które powinienem spróbować zresetować?
Znalazłem sugestię, aby zresetować ustawienia sieci, usuwając [A] ten plik: /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
ale niestety to nie działało i wydawało się, że nie ma żadnego efektu. [B]
Dodałem również nową lokalizację i usunąłem stare z panelu Preferencje sieci w Ustawieniach systemu, ale nic się nie zmieniło.
Z jakiegoś powodu adapter TB Ethernet nie został znaleziony lub rozpoznany w Preferencjach systemowych i dlatego nie nawiązano połączenia. Masz pomysł, jak to naprawić?
Teraz sprawdzam również dane wyjściowe konsoli pod kątem komunikatów związanych z siecią i znalazłem kilka, ale nie wiem, co one oznaczają lub czy są nawet zdalnie istotne:
28/02/2016 11:17:21.128 AM networkd[223]: -[NETPowerManager setupPowerPolicyTable] created power policy table from defaults with 5 timeslots
28/02/2016 11:17:21.131 AM networkd[223]: -[NETInterfaceManager updateInterfaces] nwi_state_copy() returned NULL
28/02/2016 11:17:21.134 AM networkd[223]: nw_nat64_post_new_ifstate successfully changed NAT64 ifstate from 0x0 to 0x8000000000000000
28/02/2016 11:17:21.140 AM networkd[223]: __settings_changed_block_invoke networkd_privileged_copy_settings_async with NULL settings
28/02/2016 11:17:21.141 AM networkd[223]: __settings_changed_block_invoke networkd_privileged_copy_settings_async with NULL settings
28/02/2016 11:17:21.941 AM com.apple.kextd[55]: Failed to load /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleBCM5701Ethernet.kext - (libkern/common) general/unspecified error.
28/02/2016 11:17:22.088 AM networkd[223]: -[NETInterfaceManager updateInterfaces] nwi_state_copy() returned NULL
28/02/2016 11:17:22.731 AM networkd[223]: -[NETInterfaceManager updateInterfaces] nwi_state_copy() returned NULL
28/02/2016 11:17:24.684 AM networkd[223]: -[NETInterfaceManager updateInterfaces] nwi_state_copy() returned NULL
28/02/2016 11:17:25.680 AM UserEventAgent[287]: user agent networkd: built Nov 16 2015 23:08:50
28/02/2016 11:17:26.286 AM symptomsd[263]: __73-[NetworkAnalyticsEngine observeValueForKeyPath:ofObject:change:context:]_block_invoke unexpected switch value 2
28/02/2016 11:17:26.286 AM symptomsd[263]: __73-[NetworkAnalyticsEngine observeValueForKeyPath:ofObject:change:context:]_block_invoke unexpected switch value 2
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextGetDefaultUserSpaceToDeviceSpaceTransform: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextConcatCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextDrawImages: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:08:58.796 PM com.apple.preference.network.remoteservice[548]: CGContextGetCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
28/02/2016 3:09:00.556 PM com.apple.preference.network.remoteservice[548]: Error in CoreDragRemoveTrackingHandler: -1856
28/02/2016 3:09:00.556 PM com.apple.preference.network.remoteservice[548]: Error in CoreDragRemoveReceiveHandler: -1856
28/02/2016 3:09:10.212 PM com.apple.preference.network.remoteservice[548]: Error in CoreDragRemoveTrackingHandler: -1856
28/02/2016 3:09:10.212 PM com.apple.preference.network.remoteservice[548]: Error in CoreDragRemoveReceiveHandler: -1856
[AKTUALIZACJA 1]
Podczas sprawdzania konsoli i odłączania adaptera Ethernet TB zauważyłem następujące dane wyjściowe:
28/02/2016 6:36:53.956 PM symptomsd[259]: nw_interface_get_agents SIOCGIFAGENTIDS failed for interface "en3" (index 7, type other): [6] Device not configured
28/02/2016 6:36:53.962 PM symptomsd[259]: nw_interface_get_agents SIOCGIFAGENTIDS failed for interface "en3" (index 7, type other): [6] Device not configured
[AKTUALIZACJA 2]
Po kilku kolejnych uruchomieniach ponownie i usunięciu (zresetowaniu) niektórych plików preferencji systemowych. Po podłączeniu adaptera otrzymałem teraz następujące dane wyjściowe konsoli:
29/02/2016 12:36:27.000 PM kernel[0]: AppleThunderboltNHIType2::prePCIWake - power up complete - took 1 us
29/02/2016 12:36:27.000 PM kernel[0]: AppleThunderboltGenericHAL::earlyWake - complete - took 0 milliseconds
29/02/2016 12:36:27.000 PM kernel[0]: IOThunderboltSwitch<0>(0x0)::listenerCallback - Thunderbolt HPD packet for route = 0x0 port = 11 unplug = 0
29/02/2016 12:36:27.000 PM kernel[0]: IOThunderboltSwitch<0>(0x0)::listenerCallback - Thunderbolt HPD packet for route = 0x0 port = 3 unplug = 0
29/02/2016 12:36:27.000 PM kernel[0]: IOThunderboltSwitch<0>(0x0)::listenerCallback - Thunderbolt HPD packet for route = 0x0 port = 12 unplug = 0
29/02/2016 12:36:29.000 PM kernel[0]: [ PCI configuration begin ]
29/02/2016 12:36:29.000 PM kernel[0]: [ PCI configuration end, bridges 14, devices 17 ]
źródło
Odpowiedzi:
Rozwiązaniem jest próba zresetowania możliwie największej liczby preferencji systemowych związanych z siecią. Być bardziej specyficznym:
/Library/Preferences
/Library/Preferences/SystemConfiguration
i~/Library/Preferences
):com.apple.network*.plist
NetworkInterfaces.plist
Oto, co zaobserwowałem, próbując rozwiązać problem:
Zawsze miałem dwa wpisy związane z Thunderbolt w moich ustawieniach sieciowych:
Wierzę, że most może zostać dodany domyślnie, a wersja Ethernet może być dodana na żądanie, po podłączeniu adaptera Ethernet.
Chociaż moje połączenie zostało „zerwane”, ta
Thunderbolt Ethernet
usługa / interfejs nigdy się nie pojawiła ani nie działała, więc prawdopodobnie niektóre pliki ustawień z nią związane zostały zerwane.Po usunięciu wszystkich starych odniesień (ze starych lokalizacji), a także wymienionych plików preferencji, otrzymuję teraz następujące trzy domyślne usługi podczas dodawania nowej lokalizacji do preferencji sieciowych:
Jeśli nie dostaniesz tych trzech i używasz adaptera Thunderbolt Ethernet, możesz mieć taki sam problem jak ja i powinieneś postępować zgodnie z powyższymi wskazówkami.
źródło
W danych wyjściowych konsoli znajduje się wiersz wskazujący problem, przed którym stoisz:
„Nie udało się załadować [...]. Kext” oznacza, że „ K ernel EXT ension” dla karty sieciowej nie ładuje, więc twój Thunderbolt Adapter Ethernet nie może pracować.
Pytanie oczywiście, dlaczego się nie ładuje. Komunikat o błędzie „błąd ogólny / nieokreślony” nie jest w tym przypadku bardzo pomocny.
Zrobiłbym następujące:
Wypróbuj najpierw te sugestie i opublikuj swoje wyniki.
źródło
/System
folder jest częścią kopii zapasowej TimeMachine.IONetworkingFamily.kext
do porównania i przywrócenia, ale to nie rozwiązało mojego problemu. Rozszerzenie jądra sieciowego jest wymienione jako załadowane (System Report > Software > Extensions
) i wydaje się działać poprawnie. Nie zobaczyłem też tego komunikatu o błędzie - może więc wskazywać, kiedy zaczął się mój problem, ale wydawał się jednorazowym błędem. Za każdym razem, gdy usuwam adapter Ethernet, widziałem następujące dane wyjściowe:28/02/2016 6:36:53.956 PM symptomsd[259]: nw_interface_get_agents SIOCGIFAGENTIDS failed for interface "en3" (index 7, type other): [6] Device not configured
Moje
Thunderbolt Ethernet
złącze nigdy nie działało, tzn. Nie zostało automatycznie wykryte, jak się spodziewałem, ani nie mogłem ręcznie dodać interfejsu. To za pomocą lokalizacjiAutomatic
. Tak więc w Preferencjach sieciowych kliknąłemAssist me…
, a potemAssistant
otworzyłem/System/Library/CoreServices/Network Setup Assistant.app
. To dodało inną lokalizację i wykryło złącze i zadziałało (następnie usunąłem,Automatic
ale zmieniłem nazwę nowego naAutomatic
). Tak naprawdę jestbridge0
z członkiemen3
. Zawsze działa, nawet po rozłączeniu, więc możesz chcieć ustawić go jako nieaktywny.źródło