Пишу, чтоб самому потом не вспоминать, если понадобиться снова, ну и может кому пригодится :)
Итак, сразу к делу. Позвонил друг, ему нужно расшарить какой-то usb-only принтер на пять человек. Примитивная задача, я даже думать не стал, говорю - расшарь на том компе, к которому он подключен и пусть все печатают через него. Но нет, задача не настолько проста - сотрудники все с ноутами и периодически с ними шастают, вплоть до того, что могут уехать с ним куда-то на объект, соответственно на это время печать обломится чуть менее, чем полностью. тогда предлагаю купить принт-сервер с usb и подключить принтер к сети через него - но и это уже прошли, нет больше продаже принт-серверов, по крайней мере в ситилинке и днс. Но есть роутеры, которые, вроде бы, это умеют. Окей, быстро посмотрел, из простых, которые это умеют, нашелся TP-Link WR842N, заскочил в магазин и поехал к другу. Склад, где все должно работать, стоит на окраине города, даже фактически за ним, интернет работает через сим-карту, воткнутую в роутер Kroks (тоже, кстати, с моей подачи). В общем, приехал, воткнул - первый сюрприз, сетевая печать доступна только через тп-линковское приложение, висящее в фоне и перенаправляющее обращение к usb принтеру в сеть на роутер. Вторая засада - принтер, а точнее МФУ Kyocera официально не поддерживается и заработает ли - большой вопрос (спойлер - не заработало, точнее, пару страниц печатает, потом какой-то затык и надо все перезапускать для следующей пары страниц). В общем, убив некоторое время на танцы с бубном, понял, что лучше не тратить время на это все, а воспользоваться проверенными open source решениями, которые крайне редко меня подводили. Скачал прошивку OpenWRT для этого роутера https://downloads.openwrt.org/releases/22.03.4/targets/ramip... переименовал в tp_recovery.bin и прошил в него через tftp. В роутере зажимается кнопка wps/reset, включается питание и он лезет по tftp на сервер с адресом 192.168.0.225 за прошивкой с указанным выше именем. На прошивку уходит не больше минуты, после чего в роутере OpenWRT со стандартным интерфейсом luci. Я включил на нем получение ip-адреса на внутренних интерфейсах через DHCP, но это не обязательно, просто так для диагностики мне было удобнее. Дальше заходим на роутер по ssh и ставим необходимые пакеты - # opkg install kmod-usb-printer и #opkg install p910nd luci-app-p910nd - роутер для этого, конечно, должен быть подключен к интернету - хоть через wan порт, хоть через lan. Подключаем принтер к usb и смотрим на роутере #ls /dev/usb/lp* - если вывод вроде /dev/usb/lp0 - значит все хорошо, принтер виден. Далее в веб-интерфейсе роутера заходим Services - p910nd - Printer server и включаем принт-сервер галкой "enabled", интерфейс оставляем unspecified, чтоб печатало с любого, порт стандартный 9100. На этом все - роутер видит принтер и дает печатать на него по сети по стандартному протоколу. Поскольку роутер не знает (да и не должен знать) какой принтер у нас к нему подключен, на клиентских компах при установке драйвера нужно его ставить вручную, автоматически он его, конечно, не опознает. Включаем на компе установку принтера, на винде отменяем поиск и указываем ip-адрес роутера вручную для "Устройства TCP/IP". Не обращаем внимания на то, что устройство не обнаружено и дальше указываем драйвер нужного нам принтера. В линуксе все практически то же самое, только при выборе сетевого принтера нужно выбрать AppSocket/HP JetDirect. После установки драйвера все сразу работает и никаких тебе фоновых программ, которые, к тому же, еще и работают через пень-колоду. Итого - 2400 рублей и простенький МФУ стал сетевым, причем не только с LAN, но и Wi-Fi.