Wie erhalte ich die IP des installierten Netzwerkdruckers?

Wie erhalte ich die IP des installierten Netzwerkdruckers?

Ich habe mithilfe von einen Netzwerkdrucker auf meinem Ubuntu 14.04-Rechner installiert system-config-printer. Dieses GUI-Programm bietet die Funktion „Netzwerkdrucker suchen“, die das lokale Netzwerk durchsucht. Es gibt eine Liste mit Druckernamen zurück, die mit IP-Adressen verknüpft sind.

Nehmen wir also an, ich wähle eines aus und installiere es erfolgreich.

Nach einiger Zeit merke ich, dass der von mir installierte Drucker der falsche ist. Also führe ich den Vorgang noch einmal durch und ... oh Moment, da sind mehrere Drucker desselben Typs (und Namens) mit unterschiedlichen IP-Adressen!

Ok, kein Problem, lass uns einfach die IP des gerade installierten überprüfen, damit ich sichergehe, dass ich nicht wieder das falsche installiere. Die Frage ist also:wie erhalte ich die IP eines installierten Druckers?

Offensichtlich gewährt der Dialog „Eigenschaften“ (Beispiel unten) keinen Zugriff auf diese Informationen (nein, sie sind nicht in der URI-Zeile versteckt).

Auch die Verwendung des CUPS-Webservers über hat keinen Erfolg gebracht http://localhost:631. Dies scheint grundsätzlich eine andere Möglichkeit zu sein, an dieselben Informationen zu gelangen.

Bearbeiten: Die Frage bezieht sich nicht auf den unten stehenden Drucker, sondern ist allgemeiner Natur: Da das Betriebssystem beim Erkunden des Netzwerks die IP-Adresse des Druckers abrufen kann, gehe ich davon aus, dass diese Information irgendwo gespeichert ist.Wo sind sie gespeichert und wie kann ich darauf zugreifen?Oder ist es vielleicht nirgendwo gespeichert?

Dialogfeld „Druckereigenschaften“

Antwort1

Um zu erweitern@JUHs Lösung oben...

avahi-browse --all -t -r

Ist die richtige Lösung für die automatische Erkennung von Druckern.

Leider geben viele Drucker ihre IP-Adresse für Sie, den Endbenutzer, einfach nicht in einer nutzbaren Form preis. Das ist so beabsichtigt.https://www.cups.org/doc/network.html

Die meisten Netzwerkdrucker unterstützen ein Protokoll namens Bonjour, eine Kombination aus den Standards Zero-Configuration Networking ( ZeroConf), Multicast DNS ( mDNS) und DNS Service Discovery ( DNS-SD). Diese wurden von der Internet Engineering Task Force (IETF) veröffentlicht, derselben Gruppe, die TCP/IP und alle Netzwerke definiert hat, die wir heute verwenden.

Zitat von der mDNS-Seite:

Wenn ein mDNS-Client einen Hostnamen auflösen muss, sendet er eine IP-Multicast-Abfragenachricht, in der der Host mit diesem Namen aufgefordert wird, sich zu identifizieren. Dieser Zielcomputer sendet dann per Multicast eine Nachricht, die seine IP-Adresse enthält. Alle Computer in diesem Subnetz können diese Informationen dann verwenden, um ihre mDNS-Caches zu aktualisieren. Jeder Host kann seinen Anspruch auf einen Namen aufgeben, indem er ein Antwortpaket mit einer Time-to-Live ( TTL) gleich Null sendet.

Um die IP-Adresse eines mDNS-Druckers richtig zu finden, benötigen Sie ein Tool, das den Cache lesen kann.

Zitat aus einem der Kommentare des OP:

Danke. In meinem Fall lpoptionswerden tatsächlich viele Informationen angezeigt, aber nicht die IP. Das betreffende Feld sieht aus wie device-uri=hp:/net/hp_LaserJet_2420?zc=HP2420ROOMXXX, also wieder dasselbe, was ich von GUI-Tools bekomme. Ich gehe also davon aus, dass die IP nicht auf meinem Computer gespeichert ist ...

Dies ist avahi-browsedas beste Werkzeug für diese Aufgabe ... (oder wenn Sie hierher gekommen sind, um nach einem Dienstprogramm für den Mac zu suchen: Apple bietet eines mit dem Namen an dns-sd)

Zitat von der Avahi-Seite:

Avahi ist ein System, das die Diensterkennung in einem lokalen Netzwerk über die mDNS/DNS-SD-Protokollsuite erleichtert. Auf diese Weise können Sie Ihren Laptop oder Computer an ein Netzwerk anschließen und sofort andere Personen anzeigen, mit denen Sie chatten, Drucker zum Drucken finden oder freigegebene Dateien finden. Kompatible Technologie ist in Apple MacOS X enthalten (unter der Marke „Bonjour“ und manchmal „Zeroconf“).

Avahi ist in erster Linie für Linux-Systeme gedacht und wird standardmäßig in den meisten Distributionen ausgeliefert. Es ist derzeit noch nicht auf Windows portiert, läuft aber auf vielen anderen BSD-ähnlichen Systemen. Die primäre API ist D-Bus und wird für die Verwendung des Großteils von Avahi benötigt, Dienste können jedoch mithilfe einer XML-Dienstdefinition veröffentlicht werden, die in platziert wird /etc/avahi/services.

Siehe auch das nss-mdnsProjekt, das die Hostnamensuche von *.local-Hostnamen über mDNS in allen Systemprogrammen mit nsswitch ermöglicht

Antwort2

Verwenden vonlpoptions

lpoptions  -p <printer_name> | awk '{for (i=1; i<=NF; i++) {if ($i ~ /device-uri/) {print $i}}}'

Beispiel

$ lpoptions  -p TOSHIBA_e-STUDIO2330C | awk '{for (i=1; i<=NF; i++) {if ($i ~ /device-uri/) {print $i}}}'
device-uri=socket://192.168.20.43

Um einen Überblick zu bekommenlpinfo

Beispiel

$ lpinfo -v | grep -P '://'
network dnssd://HP%20LaserJet%201022n._pdl-datastream._tcp.local/
network dnssd://TOSHIBA%20e-STUDIO2540C-07279076._printer._tcp.local/
network socket://192.168.20.201
network socket://192.168.20.203
network socket://192.168.20.204
network socket://192.168.20.205
network socket://192.168.20.206
network socket://192.168.20.207
network socket://192.168.20.43

odernmap

nmap -sT <adress_or_address_range>

und grep den Dienstprinter

Beispiel

$ nmap -sT 192.168.20.43

Starting Nmap 6.47 ( http://nmap.org ) at 2015-07-03 08:38 CEST
Nmap scan report for 192.168.20.43
Host is up (0.0017s latency).
Not shown: 991 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
25/tcp   open  smtp
80/tcp   open  http
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
515/tcp  open  printer
631/tcp  open  ipp
8080/tcp open  http-proxy
9100/tcp open  jetdirect

Antwort3

Laut Benutzerhandbuch zur HP Laserjet 2400-Serie ist die IP-Adresse auf dem Bedienfeld des Druckers selbst verfügbar.

Bildbeschreibung hier eingeben

Antwort4

Schaue auf diearp-scanBefehl(ähnlich wie ip neigh). Sie müssen es wahrscheinlich installieren:

sudo apt-get install arp-scan

Und um es noch genauer zu beschreiben:

sudo arp-scan --interface=eth0 --localnet

Wobei eth0 Ihr Gerät ist (oder wlan0 oder wlp2s0). Sie können Ihr Gerät mit ifconfigoder finden:

ip -c addr

Oder versuchen Sie, nmap( sudo apt-get install nmap) zu installieren, und geben Sie nmap ein, wobei Sie es durch die ersten drei Teile Ihrer IP-Adresse 192.168.1.0/24ersetzen (finden Sie es mit heraus ).192.168.1ip addr

verwandte Informationen