Найти в Дзене
Loader Net

Отваливается сетевой принтер (МФУ) в офисе?

Бывает такое, что один принтер настроен у нескольких человек в офисе и периодически он "отваливается" у кого-то из них. Приходится по кругу его настраивать заново (или лечить перезагрузкой PC). В чем причина этого косяка? Она достаточно простая. Давайте поймем, как устроен сетевой принтер с точки зрения архитектуры: Микроконтроллер в себе имеет прошивку, которая из себя представляет: Скажу сразу - какой-либо нормальной многопоточной ОС в этом контроллере нет. Он максимально простой - принять задание на печать, отдать в принтер. Некоторые МФУ чуть умнее и в них может быть: Такие МФУ так же не имеют в контроллере полноценной ОС. Скажем кратко - для того, чтобы принтер мог быть принт-сервером, ему необходима полноценная многопоточная сетевая ОС. т.е. наш сетевой принтер - это не принт-сервер. Это такой же принтер, который был бы на USB, но мы ходим к нему по сети. Принт-сервером он не является. А значит то, что такая железка совсем не умеет обслуживать много пользователей за разными PC. В
Оглавление

Бывает такое, что один принтер настроен у нескольких человек в офисе и периодически он "отваливается" у кого-то из них. Приходится по кругу его настраивать заново (или лечить перезагрузкой PC). В чем причина этого косяка?

В чем причина?

Она достаточно простая. Давайте поймем, как устроен сетевой принтер с точки зрения архитектуры:

  • Собственно сам принтер, точно такой же, как и подключаемый по USB к компьютеру.
  • Плата, на которой есть микроконтроллер с 2мя основными выходами: Ethernet (сеть) и USB - к принтеру.

Микроконтроллер в себе имеет прошивку, которая из себя представляет:

  • Драйвер порта Ethernet
  • Драйвер сетевого стека TCP/IP
  • Драйвер USB
  • Драйвер самого принтера (который на USB)
  • Минимальную логику управления очередью (получить задание на печать по сети и отдать его в принтер по USB)

Скажу сразу - какой-либо нормальной многопоточной ОС в этом контроллере нет. Он максимально простой - принять задание на печать, отдать в принтер.

Некоторые МФУ чуть умнее и в них может быть:

  • Буферизация задания в RAM (или на SSD), и соответственно внешняя RAM/SSD на отдельном порту контроллера.
  • SNMP-мониторинг по той же сети

Такие МФУ так же не имеют в контроллере полноценной ОС.

Скажем кратко - для того, чтобы принтер мог быть принт-сервером, ему необходима полноценная многопоточная сетевая ОС. т.е. наш сетевой принтер - это не принт-сервер. Это такой же принтер, который был бы на USB, но мы ходим к нему по сети. Принт-сервером он не является.

Что это значит?

А значит то, что такая железка совсем не умеет обслуживать много пользователей за разными PC. В ней нет механизмов очередей, многозадачности и так далее. Сетевой принтер или МФУ, подключенные к 5-10 PC, работают и могут печатать с этих компьютеров в двух случаях:

  1. Драйвер, устанавливаемый на PC умеет работать в кооперативном режиме (т.е. именно на стороне PC проверяются все условия "можно ли отправить документ на печать). Очевидно, что это работает при одном условии - идентичная версия ОС на всех PC и идентичная версия драйвера на всех PC. Поддержать такую ситуацию довольно сложно (и не нужно).
  2. Драйвер не умеет кооперативный режим. Оно работает ровно до тех пор, пока два пользователя не попытались отправить документ на печать одновременно. Как только это произошло - у одного из пользователей принтер отпадает или выдает ошибку.

Как лечить?

Нуу, не просто же так появилось явление принт-сервера! Он специально сделан так, чтобы компьютеры пользователей подключались к принт-серверу, а он уже к принтеру.

Он полноценный сервер - т.е. организует очередь печати, многопользовательский режим, работает на многозадачной ОС (Windows или Linux) и так далее.

При наличии хоть какого-то числа пользователей, печатающих одновременно, принт-сервер - это то, что необходимо иметь в офисе.

Как организуется?

Принт-сервер - это экономичная к ресурсам вещь. 4 GB RAM, 1 CPU (до 50% загрузки), 11-50 GB диска (зависит от выбора ОС - нужно иметь 10GB свободного места). Можно сделать на Windows, Linux. Можно на виртуалке, можно на сервере, можно на Raspberry Pi :-) Можно на старом PC :-)

Как защитить схему от шаловливых юзеров?

Шаловливый пользователь первое что делает когда ему нужен принтер - смотрит какие принтеры есть в сети и подключает их. Нам надо:

  1. Чтобы пользователь находил только принт-сервер и не подключался в обход него.
  2. Чтобы пользователь быстро и легко мог найти принт-сервер, не мучая админа.

Что делаем:

  1. Разбиваем сеть на 2 VLAN: один для принтеров, другой для пользователей.
  2. Запрещаем прямой доступ пользователей в vlan с принтерами.
  3. Принт-сервер вводим в оба vlan-а, чтобы он имел прямой доступ без маршрутизации, как к принтерам, так и к пользователям.

Profit! Юзеры не ломятся в принтер в обход сервера. Принт-сервер внутри локального сегмента обнаруживается на PC пользователей моментально, с помощью встроенных средств Windows.

Loader умеет мониторить и диагностировать ошибки в работе принтеров
Loader умеет мониторить и диагностировать ошибки в работе принтеров

Присоединяйтесь к Alpha-тестированию Loader Diagnostic - программы, которая не только мониторит, но и диагностирует причины неполадок в сети и сервисах Вашего офиса: https://t.me/internetquality

Так же есть Telegram-канал с новостями о релизах: https://t.me/loaderpub