Daftar Semua Printer Jaringan (termasuk yang tidak diinstal)

9

Mudah untuk membuat daftar printer yang telah Anda instal dengan perintah ini:

lpstat -a

Namun, ini tidak mencantumkan printer jaringan yang belum Anda instal.

nmap akan memindai semua port terbuka di LAN, tetapi daftar yang dihasilkan tidak akan terbatas pada printer jaringan:

sudo nmap -sT 192.168.0.1-254

Apakah ada perintah yang melakukan hal berikut:

  1. Mendeteksi LAN yang saat ini terhubung dengan Anda secara otomatis.
  2. Memindai seluruh LAN untuk mencari Printer Jaringan secara khusus.
  3. Menghasilkan daftar Network Printer yang menyediakan nama host dan alamat IP mereka.

Sebagai contoh, saya masuk ke antarmuka web printer Imagistics fx2100 hari ini. Itu memiliki fitur "Temukan perangkat" yang mampu menemukan semua printer jaringan pada LAN (lihat screenshot di bawah). Sepertinya akan ada perintah di Linux yang dapat mencapai daftar dan info yang sama (tanpa skrip):

masukkan deskripsi gambar di sini

Lonniebiz
sumber
2
Masalahnya di sini adalah bahwa kriteria ("Network Printer") adalah sesuatu yang hanya masuk akal bagi manusia. Program komputer tidak akan memiliki gagasan yang jelas tentang gagasan itu. Anda dapat mencoba melakukan pembersihan jaringan untuk alamat IP yang berhasil terhubung pada port JetDirect (tcp / 9100). Daftar ini kemungkinan masih belum lengkap dalam hal printer non-JetDirect seperti printer desktop yang dibagikan melalui SMB.
Bratchley
1
Seperti yang Anda sebutkan, sebuah program dapat memindai port terbuka dari masing-masing IP pada LAN, dan bahkan sedikit berbicara dengan port tersebut untuk mengumpulkan data. Saya mengerti bagaimana ini bisa dilakukan. Saya hanya tidak mengetahui adanya utilitas baris perintah yang sudah melakukan ini (khusus untuk printer).
Lonniebiz
1
Anda dapat melakukan sweeping untuk menemukan daftar alamat IP yang valid dan menggunakannya ncuntuk memverifikasi bahwa ia dapat terhubung tcp/9100. Anda harus menulis sesuatu karena ini adalah masalah yang sangat spesifik yang Anda coba selesaikan. Jadi saya ragu ada orang yang menulis alat untuk melakukan ini.
Bratchley

Jawaban:

3

Tidak ada program yang melakukan ini secara khusus, tetapi dengan nmap -A(deteksi host / sidik jari lanjutan) mungkin dapat mengidentifikasi sebagian besar printer. Anda harus menyaringnya setelah itu.

Sampai
sumber
11

Jika avahi-daemon sedang berjalan,

avahi-browse -a | grep Printer
infoclogged
sumber
avahi-browse -aPerintah ini kelihatannya mencantumkan printer yang sama beberapa kali dan (bahkan dengan --allargumen), ia meninggalkan informasi terkait yang ditampilkan dalam cuplikan layar di atas (seperti alamat ip printer yang dicantumkan). Saya kagum bahwa "Imagistics fx2100 printer" ini berisi firmware yang mengalahkan setiap utilitas Linux yang pernah saya lihat, ketika sampai pada daftar semua printer dari semua merek (yang bahkan tidak diinstal, tetapi menyediakan pencetakan jaringan).
Lonniebiz