Поделиться через


Устранение неполадок сети

Проблемы с сетью трудно диагностировать и устранить. Например, вы можете обнаружить, что сеть Wi-Fi работает нормально локально, но отключена от Интернета. В таком случае может возникнуть ошибка правильного обновления устройства Azure Sphere. В этом разделе приведены некоторые рекомендации, которые могут помочь диагностировать проблемы с сетью.

Проверка состояния сетевого интерфейса

  1. Откройте интерфейс командной строки с помощью PowerShell, командной строки Windows или командной оболочки Linux.

  2. Запустите 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"
      }
    ]
    
  3. Убедитесь, что следующие параметры интерфейса имеют значение 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

  1. Откройте интерфейс командной строки с помощью PowerShell, командной строки Windows или командной оболочки Linux.
  2. Запустите 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 возможности.

Если у вас по-прежнему возникают трудности:

Получение данных диагностики сети

При возникновении сбоя в сети данные диагностики можно получить двумя способами: путем вызова 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 ГГц.