Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

NET_NETWORK_ERROR (3) IP-Телефония и СКУД

Dahua NetSDK Error 3: NET_NETWORK_ERROR — сбой передачи данных и сетевой тайм-аут

Обновлено: 24.08.2026 · Официальная документация ↗
  • Функции CLIENT_LoginEx2, CLIENT_RealPlay завершаются с кодом 3 (NET_NETWORK_ERROR).
  • Тайм-аут при попытке соединения с IP-камерой или регистратором по порту TCP 37777.
  • Периодические дисконнекты и срабатывание коллбэка CLIENT_SetAutoReconnect.
  • Потеря RTSP/DHIP видеопотока при высокой нагрузке на канал связи.

1. Тюнинг сетевых таймаутов в SDK

Увеличьте время ожидания подключения и повторных попыток перед выполнением логина:

// Установка тайм-аута подключения (в миллисекундах) и числа попыток
CLIENT_SetConnectTime(5000, 3); // 5 секунд, 3 попытки

// Установка тайм-аута сетевого обмена
NET_PARAM stNetParam = { sizeof(stNetParam) };
stNetParam.nConnectTime = 5000;
stNetParam.nGetConnInfoTime = 3000;
stNetParam.nSearchRecordTime = 10000;
CLIENT_SetNetworkParam(&stNetParam);

2. Проверка доступности служебных портов Dahua

# Проверка доступности порта управления TCP 37777
nc -zvw3 192.168.1.108 37777
# Либо через telnet:
telnet 192.168.1.108 37777

3. Регистрация коллбэка восстановления связи

Реализуйте автоматическое восстановление сессии при обрывах:

void CALLBACK DisConnectFunc(LLONG lLoginID, char *pchDVRIP, LONG nDVRPort, LDWORD dwUser) {
    printf("Device %s:%ld disconnected!\n", pchDVRIP, nDVRPort);
}

CLIENT_Init(DisConnectFunc, 0);
CLIENT_SetAutoReconnect(AutoReconnectFunc, 0);
💡 Практика специалистов: Если устройства находятся за NAT, используйте режим активной регистрации Dahua Auto-Register (Active Registration / CLIENT_ListenServer), при котором регистратор сам открывает исходящее соединение к SDK-серверу.

Частые вопросы (FAQ)

Какие сетевые порты использует Dahua NetSDK по умолчанию?

Основной порт управления и медиапотока TCP 37777 (DHIP), альтернативный веб-порт TCP 80/443 и RTSP порт TCP/UDP 554.

Почему в локальной сети возникает ошибка 3 при большом количестве камер?

Это связано с переполнением очереди TCP-сокетов или ограничением сетевого адаптера по числу одновременных полуоткрытых соединений (SYN backlog).

Что делать, если камеры подключены через нестабильный 4G-канал?

Переключите протокол передачи медиапотока на TCP (вместо UDP) и увеличьте nConnectTime до 10000 мс через CLIENT_SetNetworkParam.

Как проверить потери пакетов до IP-камеры?

Запустите ping с размером пакета близким к MTU: ping -s 1472 -c 100 192.168.1.108.

Полезные материалы
Рекомендуем