Es fácil enumerar las impresoras que ya instaló con este comando:
lpstat -a
Sin embargo, esto no enumera las impresoras de red que NO ha instalado.
nmap buscará todos los puertos abiertos en la LAN, pero la lista producida no se limitará a las impresoras de red:
sudo nmap -sT 192.168.0.1-254
¿Hay un comando que haga lo siguiente:
- Detecta la LAN a la que estás conectado automáticamente.
- Escanea toda la LAN en busca de impresoras de red específicamente.
- Produce una lista de impresoras de red que proporcionan sus nombres de host y direcciones IP.
Por ejemplo, hoy inicié sesión en la interfaz web de la impresora Imagistics fx2100. Tenía una función de "Buscar dispositivo" que era capaz de encontrar todas las impresoras de red en la LAN (vea la captura de pantalla a continuación). Parece que habría un comando en Linux que podría lograr la misma lista e información (sin secuencias de comandos):
command-line
hardware
printing
printer
Lonniebiz
fuente
fuente
nc
para verificar que se pueda conectartcp/9100
. Tendría que escribir algo, ya que este es un problema muy específico que está tratando de resolver. Así que dudo que alguien haya escrito una herramienta para hacer esto.Respuestas:
No hay un programa que haga esto específicamente, pero con
nmap -A
(detección avanzada de host / huella digital) puede ser capaz de identificar la mayoría de las impresoras. Tendrás que filtrarlo después.fuente
Si avahi-daemon se está ejecutando, entonces
fuente
avahi-browse -a
comando parece enumerar las mismas impresoras varias veces e (incluso con el--all
argumento) omite la información pertinente que se muestra en la captura de pantalla anterior (como la dirección IP de la impresora que está enumerando). Me sorprende que esta "impresora Imagistics fx2100" contenga firmware que supera a todas las utilidades de Linux que he visto, cuando se trata de enumerar todas las impresoras de todas las marcas (que ni siquiera están instaladas, pero están proporcionando impresión en red).