Устранение неполадок сети
Проблемы с сетью трудно диагностировать и устранить. Например, вы можете обнаружить, что сеть Wi-Fi работает нормально локально, но отключена от Интернета. В таком случае может возникнуть ошибка правильного обновления устройства Azure Sphere. В этом разделе приведены некоторые рекомендации, которые могут помочь диагностировать проблемы с сетью.
Проверка состояния сетевого интерфейса
Откройте интерфейс командной строки с помощью PowerShell, командной строки Windows или командной оболочки Linux.
Запустите az sphere device network list-interfaces , чтобы получить сведения о сетевых интерфейсах для подключенного устройства.
В выходных данных отображаются все интерфейсы, настроенные для устройства. Для каждого интерфейса на устройстве выходные данные показаны ниже.
[ { "connectedToInternet": false, "connectedToNetwork": false, "hardwareAddress": null, "interfaceName": "azspheresvc", "interfaceUp": true, "ipAcquired": false, "ipAddresses": [ "192.168.35.2" ], "ipAssignment": null }, { "connectedToInternet": false, "connectedToNetwork": false, "hardwareAddress": "b2:30:bb:f0:d1:44", "interfaceName": "eth0", "interfaceUp": true, "ipAcquired": false, "ipAddresses": null, "ipAssignment": "dynamic" }, { "connectedToInternet": false, "connectedToNetwork": false, "hardwareAddress": null, "interfaceName": "lo", "interfaceUp": true, "ipAcquired": false, "ipAddresses": [ "127.0.0.1" ], "ipAssignment": null }, { "connectedToInternet": false, "connectedToNetwork": false, "hardwareAddress": "00:02:b5:03:69:ea", "interfaceName": "wlan0", "interfaceUp": true, "ipAcquired": false, "ipAddresses": null, "ipAssignment": "dynamic" } ]
Убедитесь, что следующие параметры интерфейса имеют значение True.
Сетевой интерфейс вверх. Если этот параметр имеет значение False:
- Убедитесь, что локальные устройства с помощью точки доступа подключены. Дополнительные сведения см. в разделе Networking_IsNetworkingReady Функция.
- Убедитесь, что сетевой интерфейс включен. Вы можете включить необходимый интерфейс с помощью команды az sphere device enable или с помощью API функции Networking_SetInterfaceState.
Подключено к сети. Если этот параметр имеет значение False:
- Запустите az sphere device wifi show-status , чтобы убедиться, что значение SSID Wi-Fi соответствует параметрам устройства Wi-Fi.
- Проверьте наличие сетей, чтобы убедиться, что SSID в параметрах устройства соответствует SSID в сети. Дополнительные сведения см. в разделе "Команда проверки wi-fi".
- Если SSID для сети Wi-Fi скрыт и приложение использует целевую проверку, проверьте, включена ли целевая проверка .
Полученный IP-адрес. Если этот параметр имеет значение False:
- Подождите, пока подключение будет сделано.
- Проверьте сеть, чтобы узнать, полностью ли подключена точка доступа и другие устройства в сети. Дополнительные сведения см. в разделе Networking_IsNetworkingReady Функция.
- Проверьте диапазон разрешенных IP-адресов или ограничение разрешенных подключений в точке доступа и сети.
Подключено к Интернету. Если этот параметр имеет значение False:
- Убедитесь, что сеть подключена к Интернету.
Проверка состояния Wi-Fi
- Откройте интерфейс командной строки с помощью PowerShell, командной строки Windows или командной оболочки Linux.
- Запустите az sphere device wifi show-status , чтобы просмотреть сведения о текущем подключении Wi-Fi на устройстве.
Вы должны увидеть результат, аналогичный приведенному ниже:
az sphere device wifi show-status
{
"SSID": "MSFTGUEST",
"configurationState": "enabled",
"connectionState": "connected",
"frequency": 5660,
"ipAddress": "10.106.106.40",
"keyManagement": "NONE",
"macAddress": "00:02:b5:03:69:ea",
"mode": "station",
"securityState": "open",
"wpaState": "COMPLETED"
}
Если для состояния подключения установлено отключение, включите Wi-Fi на устройстве.
Проверка состояния сети
Запустите az sphere device network show-status , чтобы просмотреть состояние сети для подключенного устройства.
Вы должны увидеть результат, аналогичный приведенному ниже:
az sphere device network show-status
{
"deviceAuthenticationIsReady": false,
"networkTimeSync": "incomplete",
"proxy": "disabled"
}
- Если проверка подлинности устройства готова к возврату False,
- Перезапустите устройство и повторите команду.
- Убедитесь, что сеть настроена для разрешения входящего и исходящего трафика. Дополнительные сведения см. в разделе "Порты и протоколы".
- Если состояние синхронизации сетевого времени возвращается неполным,
- Подождите, пока подключение будет сделано.
- Убедитесь, что сеть настроена для разрешения входящего и исходящего трафика. Дополнительные сведения см. в разделе "Порты и протоколы".
Проверка параметров брандмауэра
Если приложению не удается подключиться к удаленному узлу:
- Проверьте параметры брандмауэра приложения.
Манифест приложения должен указать имена узлов или IP-адреса, к которым может подключаться приложение, задав
AllowedConnections
возможность. - Если приложение было настроено для обнаружения служб, помимо записей в манифесте приложения, обнаруженные конечные точки также должны быть перечислены в конфигурации брандмауэра.
Если удаленные узлы не удается подключиться к серверу приложению:
- Проверьте параметры брандмауэра приложения.
Манифест приложения должен указывать UDP и TCP-порты, к которым приложение открыто для входящих подключений, задав
AllowedTcpServerPorts
параметры иAllowedUdpServerPorts
возможности.
Если у вас по-прежнему возникают трудности:
- Запустите az sphere device network list-firewall-rules и убедитесь, что IP-адрес в правилах брандмауэра и файл манифеста приложения совпадает.
- Убедитесь, что системные подключения по умолчанию присутствуют по умолчанию.
Получение данных диагностики сети
При возникновении сбоя в сети данные диагностики можно получить двумя способами: путем вызова API WifiConfig и из командной строки.
Высокоуровневое приложение может вызвать функцию WifiConfig_GetNetworkDiagnostics для сбора сведений о проблеме. Эта функция возвращает структуру WifiConfig_NetworkDiagnostics
, содержащую сведения о последнем сбое в указанной сети. Комбинируйте сведения из структуры диагностики и приведенные ниже советы, чтобы выполнить диагностику и восстановление после распространенных сетевых сбоев.
В примере WiFi_HighLevelApp показано, как использовать данные диагностики.
Вы также можете использовать команду az sphere device network show-диагностика для отображения диагностических сведений об последней ошибке.
Неправильное сетевое подключение
Если устройство подключено к неправильной сети или с неверными атрибутами, убедитесь, что конфигурация сети верная. Если конфигурация изменена, ее необходимо перезагрузить. В приложении вызовите WifiConfig_ReloadConfig или в командной строке, используйте команду az sphere device reload-config для перезагрузки текущей конфигурации. Чтобы сохранить конфигурацию сети после перезагрузки, приложение может вызвать функцию WifiConfig_PersistConfig.
Проблемы при обновлении сертификата корневого ЦС
Если устройство не может подключиться к сети EAP-TLS после обновления сертификата корневого ЦС, начните с проверки состояния, возвращенного функцией WifiConfig_SetNetworkEnabled.
Если состояние указывает на ошибку сертификата корневого ЦС, это может быть вызвано одной из следующих причин:
- Истек ли или изменился срок действия старого корневого сертификата CA1 на сервере RADIUS во время процесса обновления? Если да, то новый корневой сертификат CA2 может быть неверным.
- Возникли ли другие сбои на стороне сервера? Обратитесь к сетевому администратору. Администратор мог использовать другой или неправильный центр сертификации, и вам может потребоваться исправить это централизованно.
Если состояние указывает на ошибку сертификата клиента:
- Была ли конфигурация новой сети Network2 рассинхронизирована со свойствами сети Network1? Если свойства изменились в сети Network1, но вы попытались подключиться с помощью устаревших свойств сети Network2, то подключение Network2 может завершиться ошибкой. Убедитесь, что ключевые свойства двух сетей идентичны.
- Изменился ли сертификат клиента во время процесса обновления сети? Проверьте сертификаты, связанные с сетью Network1 и Network2, и убедитесь, что они одинаковы. Приложение может использовать функции в API CertStore для проверки сведений о сертификате.
Если корневой ЦС и сертификат клиента верны, сбой может быть связан с точкой доступа Wi-Fi или другой проблемой.
Продолжайте проверять данные, возвращенные функцией WifiConfig_GetNetworkDiagnostics после каждой неудачной попытки получить дополнительные сведения о проблеме.
Проблемы при обновлении сертификата клиента
Если устройство не может подключиться к сети EAP-TLS после обновления сертификата клиента, начните с проверки состояния, возвращаемого функцией WifiConfig_SetNetworkEnabled.
Если состояние указывает на ошибку сертификата клиента:
- Вернитесь к предыдущему сертификату и повторите попытку подключения. Успешное выполнение указывает на проблему с новым сертификатом клиента; ошибка указывает, что новый сертификат является недопустимым или срок действия старого сертификата истек.
Если состояние указывает на ошибку другого типа:
- Имеются ли в сети другие проблемы? Продолжайте выполнять попытки подключения с помощью сертификата клиента.
Продолжайте проверять данные, возвращенные функцией WifiConfig_GetNetworkDiagnostics после каждой неудачной попытки получить дополнительные сведения о проблеме.
Проблемы, связанные с подключением к сети 5GHz, которая не передает SSID
Существует известная проблема в MT3620, где устройства могут быть не в состоянии подключиться к сетям 5GHz, которые не транслировали SSID, несмотря на использование целевой проверки. Рекомендуется отключить широковещательную передачу SSID или сделать это в сети только для 2,4 ГГц.