← На главную
При организации удаленной работы складов и филиалов часто встречается архитектура с несколькими промежуточными узлами: рабочий компьютер склада подключается к первому терминальному серверу, а с него выполняется вход на следующий сервер, где развернута рабочая база 1С. В таких сценариях стандартное перенаправление портов перестает работать на втором шаге цепочки.
Разберем причины возникновения этой проблемы и рассмотрим проверенные технические решения для стабильной работы сканера штрихкодов в среде 1С.
Почему не работает каскадный проброс COM-портов в RDP
Проанализируем механику работы протокола удаленного рабочего стола. Когда мы подключаемся с локального компьютера склада к первому удаленному серверу с включенной опцией проброса портов, служба RDP создает виртуальное устройство перенаправления вида \\tsclient\COMx.
Ограничения стандартного механизма RDP проявляются следующим образом:
- Отсутствие аппаратного сопоставления: Перенаправленный порт не является полноценным физическим COM-портом в операционной системе первой удаленной машины. Это интерфейс виртуального канала терминальной сессии.
- Блокировка повторного захвата: Клиент RDP, запущенный внутри уже существующей сессии удаленного рабочего стола, не может захватить псевдопорт
\\tsclient\COMx и повторно передать его в следующую сессию (эффект Multi-hop).
- Потеря управляющих сигналов: Даже если порт удается зарегистрировать в реестре или назначить через системные утилиты, драйверы оборудования 1С не получают необходимые сигналы готовности и прерывания от сканера.
Решение 1. Перевод сканера в режим эмуляции клавиатуры (HID)
Рассмотрим самый простой способ, который снимает необходимость в пробросе виртуальных последовательных портов через RDP-сессии. Большинство современных и программируемых сканеров штрихкодов поддерживают режим HID-клавиатуры.
Разберем по шагам, как перевести сканер в нужный режим:
- Найдем сервисную инструкцию (руководство по быстрой настройке / User Manual) к конкретной модели сканера.
- Отсканируем специальный управляющий штрихкод: USB HID Keyboard или USB Keyboard Emulation.
- Если конфигурация 1С требует автоматического распознавания события сканирования, настроим на сканере суффикс (обычно символ возврата каретки
CR / Enter или специальный префикс/суффикс F7).
- Проверим ввод в обычном текстовом редакторе на локальном ПК склада: сканер должен печатать штрихкод так же, как обычная клавиатура.
- В сессии 1С на удаленном сервере настроим драйвер оборудования «1С:Сканеры штрихкода (эмуляция клавиатуры)» или оставим обработку события по префиксу/суффиксу.
В этом случае клавиатурный ввод передается через стандартный поток RDP-клиента без каких-либо сложностей с пробросом COM-портов через промежуточные узлы.
Решение 2. Запуск тонкого клиента 1С на локальном компьютере
Проанализируем штатный подход платформы 1С:Предприятие 8. Отказ от каскадного терминального доступа в пользу прямого сетевого подключения к базе полностью решает вопрос с оборудованием.
Посмотрим на порядок реализации:
- На конечном сервере настраиваем публикацию информационной базы на веб-сервере (IIS или Apache) по защищенному протоколу HTTPS либо открываем доступ к серверу 1С:Предприятия.
- На рабочем компьютере склада устанавливаем платформу 1С:Предприятие в режиме Тонкий клиент.
- Подключаем тонкий клиент напрямую к опубликованной базе данных.
- Настраиваем сканер штрихкодов в базе 1С локально на складе, указав его физический виртуальный порт
COM7.
В этом сценарии все компоненты драйверов работают локально с реальным COM-портом, а в базу данных передаются готовые обработанные события платформы.
Решение 3. Использование службы «Сервер оборудования 1С»
Если прямой запуск тонкого клиента на складе невозможен, используем механизм удаленной работы с оборудованием из состава «Библиотеки подключаемого оборудования» (БПО).
Разберем настройку по шагам:
- На компьютере склада устанавливаем и запускаем службу Сервер оборудования 1С (компонента БПО).
- Подключаем сканер штрихкодов к службе локально через порт
COM7.
- На удаленном сервере, где запущена информационная база 1С, при добавлении подключаемого оборудования выбираем работу через удаленный сервер оборудования.
- Указываем IP-адрес или сетевое имя складского компьютера и порт службы оборудования.
Связь между 1С и сканером осуществляется по протоколу TCP/IP напрямую, минуя промежуточную терминальную сессию.
Решение 4. Перенаправление COM-порта по сети (Serial over IP / USB over IP)
Если требуется сохранить логику работы через COM-порт в терминальной 1С без перестройки архитектуры базы, применим специализированное программное обеспечение для трансляции портов по TCP/IP:
- Serial over Ethernet: На ПК склада устанавливаем серверную часть программы, транслирующую трафик с
COM7 в TCP-порт. На целевом сервере (удаленка 2) запускаем клиентскую часть, которая создает локальный виртуальный COM-порт и подключается к складскому ПК через локальную сеть или VPN.
- USB over IP: Программа захватывает USB-контроллер сканера на складской машине и подключает его на конечном сервере как физическое USB-устройство.
Решение 5. Переход на единую RDP-сессию через VPN или RDP Gateway
Часто схема «Удаленка 1 -> Удаленка 2» создается исключительно для преодоления сетевых экранов и разграничения доступа.
Выясним, как оптимизировать этот маршрут:
- Настраиваем защищенный VPN-канал (WireGuard, OpenVPN, IPsec) между складом и сетью конечного сервера.
- Либо разворачиваем роль Шлюз удаленных рабочих столов (Remote Desktop Gateway) на базе первой удаленной машины.
- Подключаемся с компьютера склада напрямую к конечному серверу в одну сессию RDP через шлюз.
- В параметрах подключения включаем проброс последовательных портов: в единственной RDP-сессии виртуальный
COM7 успешно сопоставляется и определяется драйвером 1С.