При подключении фискальных регистраторов семейства Штрих-М (например, Штрих-М-01Ф, Штрих-ON-LINE, Ритейл-01Ф) к компьютеру по интерфейсу USB с использованием эмуляции сетевого узла RNDIS специалисты часто сталкиваются со стабильным сбоем: чеки внезапно перестают уходить в ОФД. Самым распространенным временным решением является «передергивание» сетевых настроек Windows — снятие и повторная установка галочки «Разрешить другим пользователям сети использовать подключение к Интернету данного компьютера» (служба общего доступа ICS). Однако после перезагрузки компьютера или случайного сетевого сбоя проблема возвращается.
В этой статье мы подробно разберем, почему возникает данная неисправность, проанализируем внутренние механизмы операционной системы Windows и рассмотрим несколько надежных практических способов раз и навсегда решить проблему с зависанием RNDIS.
Прежде чем переходить к настройке, давайте разберемся в физической и программной природе этого зависания. Проблема имеет комплексный характер и складывается из трех ключевых факторов:
SharedAccess) в современных версиях Windows по умолчанию переходит в спящий режим через несколько минут неактивности. После перезагрузки операционной системы она часто не запускается вовремя, из-за чего кассовый аппарат теряет связь с интернетом.передано 0 байт, получено 0 байт.VID_18D1 и PID_4EE4. Windows часто распознает их некорректно и устанавливает устаревшие драйверы от сторонних производителей (например, Acer), которые работают нестабильно под высокой сетевой нагрузкой.Рассмотрим по шагам все доступные способы решения этой проблемы — от простой фиксации настроек Windows до использования специализированного программного обеспечения.
Если вы хотите оставить классическую схему трансляции интернета на кассу через галочку общего доступа, нам необходимо заставить Windows принудительно сохранять это подключение активным после перезагрузки ПК.
Разберем по шагам, как настроить автозапуск и постоянную работу службы:
Win + R, введите команду regedit и нажмите клавишу Enter.HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\SharedAccessEnableRebootPersistConnection и установим его значение равным 1 (в шестнадцатеричной системе счисления).Win + R, введите services.msc.SharedAccess).Для гарантированного внесения изменений можно применить готовый файл конфигурации реестра. Посмотрим на структуру этого файла:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedAccess]
"EnableRebootPersistConnection"=dword:00000001
После применения этих настроек операционная система перестанет отключать общий доступ к интернету при перезагрузках или длительном простое оборудования.
Сетевой мост — это более надежная альтернатива общему доступу (ICS). Этот метод полностью исключает службу общего доступа из цепочки передачи данных. Суть метода заключается в том, что виртуальный RNDIS-адаптер кассы и физический сетевой адаптер компьютера объединяются в единый логический коммутатор.
Разберем по шагам процесс настройки сетевого моста:
192.168.1.45, а сетевой шлюз — 192.168.1.1, то кассе можно присвоить адрес 192.168.1.200. Укажите маску подсети (обычно 255.255.255.0) и адрес шлюза (192.168.1.1).ncpa.cpl в окне Win + R).TCP/IPv4 установите автоматическое получение IP-адреса и DNS.Ctrl на клавиатуре и выделите левой кнопкой мыши два подключения: ваше основное сетевое подключение (Ethernet) и виртуальное RNDIS-соединение кассы.TCP/IPv4 пропишите те сетевые реквизиты (IP, маска, шлюз), которые ранее использовались на вашем физическом адаптере Ethernet компьютера для выхода в интернет.После проведения этих манипуляций касса окажется в одной физической сети с компьютером и сможет отправлять пакеты в ОФД напрямую через шлюз, минуя любые виртуальные трансляции адресов.
Если сетевой интерфейс кассы продолжает периодически уходить в глухое зависание с признаками отсутствия приема-передачи пакетов, необходимо скорректировать параметры электропитания и принудительно обновить драйвер устройства в диспетчере Windows.
Проанализируем алгоритм настройки параметров питания:
Теперь решим проблему с некорректным драйвером RNDIS. Выполним его принудительное обновление на стандартный совместимый драйвер от Microsoft:
Установка оригинального системного драйвера от Microsoft полностью решает проблему внутреннего зависания сетевого стека виртуальной сетевой карты ККТ Штрих-М.
Наиболее технологичным и стабильным решением на сегодняшний день является использование специализированной прокси-службы. Разработчики Штрих-М внедрили этот механизм для того, чтобы полностью отказаться от капризных системных механизмов общего доступа Windows ICS и сетевых мостов.
Ранее для этих целей использовалась утилита OFDProxy (или ofdconnect), требовавшая сложной ручной настройки конфигурационных файлов. В актуальных версиях программного обеспечения ей на смену пришла современная служба kktProxy.
Рассмотрим, как запустить и настроить данную технологию:
192.168.137.1).7778).kktProxy при установке регистрируется в операционной системе Windows как автоматически запускаемая служба. Она перехватывает фискальные пакеты, приходящие от кассы на порт 7778 локального адреса, упаковывает их и через основное интернет-подключение компьютера стабильно пересылает на реальные адреса серверов ОФД.Этот метод считается самым отказоустойчивым. Касса взаимодействует только с локальным хостом по стабильному внутреннему сокету, а служба-посредник гарантирует доставку пакетов до ОФД без зависания интерфейсов.
В некоторых сложных корпоративных сетевых инфраструктурах (например, когда касса физически подключена к тонкому клиенту, а кассир работает внутри удаленной терминальной сессии RDP на сервере) стандартные способы проброса сети не работают. В таких случаях технические специалисты используют альтернативную утилиту Антинат (SOCKS5).
Принцип работы данного метода выглядит следующим образом:
Если вы испробовали все программные методы настройки операционной системы Windows, но ККТ Штрих-М продолжает внезапно переставать отправлять чеки в ОФД (особенно часто это проявляется при попытке пробития маркированных товаров), проблема может крыться во внутреннем программном обеспечении самого фискального регистратора.
В старых версиях прошивок тепловых плат ККТ (в частности, на ветке ПО «С.1») существовала аппаратная проблема обработки сетевых таймаутов интерфейса RNDIS. При переходе на новые форматы фискальных данных (ФФД 1.2), требующие отправки тяжелых зашифрованных пакетов и запросов о кодах маркировки, старое ПО процессора ККТ не справлялось с нагрузкой и зависало.
Для гарантированного решения проблем сетевого обмена настоятельно рекомендуем обратиться к вашему обслуживающему сервисному центру (или выполнить самостоятельно при наличии соответствующих полномочий) для обновления внутренней прошивки ККТ до актуальных стабильных версий сборки (рекомендуется линейка «С.3» и новее).
Мы подробно проанализировали причины сбоев сетевого интерфейса RNDIS на оборудовании Штрих-М и рассмотрели пять эффективных способов борьбы с зависаниями. Рекомендуется начать с настройки параметров энергосбережения USB-портов и установки стандартного совместимого драйвера от Microsoft, а при сохранении нестабильности — осуществить переход на современную службу-посредник kktProxy.