Если касса находится черт знает где?

Как настроить отношения сервера с «удаленной» кассой Астрал К1-Ф

Офис, склад, магазин. И все это в одном здании, семейная идиллия…. — так, до недавнего времени, работала компания «Прокатись».

Все просто и удобно, как и устройство IT-инфраструктуры. Все нолики и единички крутились в единой локальной сети, центром которой был сервер терминалов с 1С: Предприятие и прочим необходимым софтом, который настраивали мы — компания «Кволитек». Данная схема обеспечивает надежность, безопасность и простоту администрирования. А еще позволяет использовать вместо громоздких ящиков, называемых ПК, вот такие тонкие клиенты, главным преимуществом которых является то, что там попросту нечему тормозить и виснуть. По тем же причинам были установлены кассы К1-Ф, простота обслуживания освобождала от походов в сервисный центр, а наличие Ethernet-порта от привязки к компьютеру. В этой кассе есть все самое необходимое, никаких USB и виртуальных COM-портов, касса доступна и проста в настройке. Проста, пока находится в одной локальный сети с сервером…

Но ничто не длится вечно, пламя любви погасло и сервер с кассами разъехались по разным помещениям. Сервер стал жить в офисе, а кассы в розничном магазине. IT-свахам из «Кволитек» предстояло настроить любовь на расстоянии, поскольку кассы отказались исполнять свой долг удаленно.

Первое решение, которое пришло на ум — проброс портов через NAT. Тест связи был пройден успешно, открытие смены тоже, но на этой прелюдии все и закончилось, акт печати чека не состоялся. Бывает…  Ошибки было две, превышено время ожидания и ошибка соединения.

Гипотеза о том, что кассы К1-Ф больше одного NAT не выдержат не была лишена смысла, но так же мы не исключали, что проблема была в версии драйвера и обработки 1С. Поскольку кассы и сервер подключались через двойной NAT и, вдобавок, доступные версии обработок и драйверов были не первой свежести, мы решили не рисковать. «Подключай меня полностью» — она словно подсказывала нам что делать дальше. Объединить кассы и сервер в одну локальную сеть было простым и логичным решением. После того, как мы развернули OpenVPN с виртуальной Tap-сетевой картой на сервере и прописали IP из диапазона локальной сети торговой точки где находились кассы, осталось настроить VPN-клиент на одном из компьютеров торговой точки. Мы подняли виртуальный Tap-интерфейс и объединили его с физической сетевой картой в мост.

Поскольку рабочее решение требовалось срочно, VPN был настроен на одном из компьютеров торговой точки. Мы осознавали, что это не самое надежное решение, т.к. был риск отключения компьютера, поэтому следующим шагом VPN-клиент был настроен на маршрутизаторе Microtik 951.