1
août
2025
Installation d'imprimantes réseau sous Linux - partie 1 : types de connexions d'imprimante, impression via AppSocket
15:03

Installation d'imprimantes réseau sous Linux - partie 1 : types de connexions d'imprimante, impression via AppSocket

1 août 2025 15:03

Au travail, il existe plusieurs imprimantes et appareils multifonctions (MFP) en réseau connectés à un réseau local (LAN). Ils peuvent être imprimés à partir d'un ordinateur exécutant le système d'exploitation Linux. Un jour, les travaux d'impression ont cessé d'être exécutés et l'imprimante a arrêté d'imprimer. J'ai dû étudier la question de savoir comment installer au mieux une imprimante réseau dans le système d'exploitation Linux.

Introduction

Il existe de nombreuses instructions pour configurer les imprimantes dans CUPS. Mais ils accordent peu d’attention aux technologies d’impression réseau distinctes. Il existe notamment des technologies de niveau inférieur (AppSocket et IPP/IPPS) et des technologies plus récentes, notamment ZeroConf et l'impression sans pilote. Dans cet article, je voulais examiner de plus près les options de connexion d'imprimantes réseau sous Linux.

Classification de l'impression réseau :

Pour Linux:

- En utilisant des pilotes :

  • impression avec pilotes (pour les appareils plus anciens),
  • imprimer sans pilotes (pour les appareils modernes).

    - Selon le besoin de configuration (du plus grand au moins requis) :

    • technologies d'impression qui nécessitent une configuration manuelle (administration) des imprimantes :
      • AppSocket (JetDirect) - impression directe sur une imprimante, nécessite une configuration de connexion.
      • IPP, IPPS : dans leur forme pure, ils nécessitent une configuration manuelle, car ils n'utilisent pas la découverte automatique Avahi/DNS-SD (Bonjour) ou IPP Everywhere. Avec Bobjour, IPPS ne nécessite aucune configuration.
    • Technologie d'impression sans configuration (ZeroConf) sous Linux :

Pour Apple, technologie d'impression avec la fonction "Zéro Conf" sans configuration :
*AirPrint(identique à « Bonjour ») - pour Apple iOS : Mac, iPad, iPhone, iPod.

Pour Android, technologie d'impression avec fonction sans configuration (ZeroConf) :
*systèmes d'impression du fabricant MFP* source fermée (réseaux Wi-Fi, Wi-Fi Direct ou point d'accès Wi-Fi intégré),
Mopria**(technologie des fabricants d'imprimantes de l'alliance Mopria, l'application sur Google Play n'est pas disponible en Fédération de Russie).

1. Recherchez des imprimantes réseau sur le réseau local

1.1 Recherche d'imprimantes réseau à l'aide de CUPS

http://localhost:631/admin - bouton "Ajouter une imprimante".

Détails :

Cups implémente une recherche d'imprimantes dans l'interface Web de CUPS. http://localhost:631/ -> Administration ->Ajouter une imprimante:

cups-search1

Sur l'écran suivant, dans la colonne * Imprimantes réseau découvertes, une liste des imprimantes trouvées sur le réseau local s'affichera.

cups-search2

Sélectionnez la ligne -> bouton Continuer(le bouton est situé en bas de l'écran ou derrière l'écran - faites défiler la page Web).

L'écran affiche une chaîne de connexion mentionnant l'un des deux protocoles d'impression réseau : IPPS:// ou DNSSD://.

cups-search3

Si l'imprimante est relativement récente et prend en charge le mode d'impression driverless et que l'option avec le préfixe driverless est sélectionnée dans la liste, après avoir appuyé sur Continuer une option vous sera proposée IPP partout- impression sans pilotes (voir section 2.2 - impression sans pilotes dans IPP Everywhere).

1.2 Comment trouver des imprimantes réseau à partir de la ligne de commande à l'aide de lpinfo

Si les imprimantes du réseau peuvent se faire de la publicité en utilisant Bonjour(une combinaison de normes DNS multicast (mDNS) et de découverte de services DNS (DNS-SD)), ils peuvent être trouvés avec la commande "lpinfo -v".

lpinfo -v

network lpd
file cups-brf:/
network http
network socket
network beh
network ipp
network smb
network https
serial serial:/dev/ttyS0?baud=115200
network ipps
direct hp
direct hpfax
network dnssd://Kyocera%20ECOSYS%20M2540dn._ipp._tcp.local/?uuid=4509a320-0056-0101-003e-0025074f9312
network ipps://Pantum%20BM5100ADN%20Series%204AF471._ipps._tcp.local/

Les deux dernières entrées correspondent aux imprimantes réseau. L'imprimante Kyocera s'est annoncée via DNSSD - un remplacement DNS sans serveur (paquets de diffusion). La deuxième imprimante Pantum s'est annoncée sur le réseau d'une manière différente - IPPS Multicast Discovery.

*modèle Pantum BP5100DW. Le manuel d'utilisation indique qu'il est compatible avec Linux (Ubuntu 14.04/16.04/18.04 (32/64 bits) ; Debian 10.0 ; RedHat 8.0.0 ; Astra Linux Special Edition V1.6 ; CentOS 7 (32/64 bits).

1.3 Recherche d'imprimantes réseau compatibles IPP à l'aide du service Avahi

sudo apt install avahi-utils
sudo service avahi-daemon start

avahi-browse -rt _ipp._tcp #chercher uniquement _ipp._tcp

avahi-browse -ra #rechercher toutes les imprimantes (long)

transcription :

  • port 80 - port d'imprimante avec prise en charge IPP (sans S)
  • port 443 - port d'imprimante avec prise en charge IPPS
  • port 631 - port d'imprimante avec prise en charge IPPS

1.4 Manière graphique de rechercher des imprimantes réseau à l'aide du composant logiciel enfichable Imprimantes

Linux Mint a un composant logiciel enfichable dans Démarrer - Administration
*Imprimantes(package et commande system-config-printer)

L'installation comprend les packages :

sudo apt install system-config-printer system-config-printer-common system-config-printer-udev

sudo apt install python3 python3-cups python-cupshelpers python3-dbus

Le composant logiciel enfichable Imprimantes est disponible pour les bureaux suivants :

  • Ubuntu-Desktop-Minimal,
  • Ubuntu-bureau,
  • kubuntu-bureau,
  • kubuntu-plein,
  • xubuntu-bureau,
  • Lubuntu-Desktop,
  • Ubuntustudio-Desktop,
  • Ubuntukylin-Desktop,
  • ubuntu-mate-core,
  • Ubuntu-Mate-Desktop,
  • Ubuntu-budgie-bureau,
  • ubuntu-budgie-desktop-raspi

    Lancement d'une recherche d'imprimantes réseau :

    system-config-printer

Lors de l'ouverture imprimante-config-système les imprimantes réseau sont recherchées et leurs adresses IP et noms d'hôte sont affichés.

1.5 Recherche d'imprimantes réseau à l'aide du renifleur de paquets WireShark 4.2.0 et versions ultérieures

Les imprimantes et routeurs réseau envoient des paquets Bonjour mDNS (RFC 6762) :

mdns

Lancement de la version standard de WireShark 3.x.x (depuis le référentiel)

sudo wireshark

Capturez et enregistrez dans le fichier pcapng. Puis sudo chmod 644 *.pcapng

Installation de Wireshark version 4.4.8 pour l'analyse des paquets :

flatpak install flathub org.wireshark.Wireshark

Lancement de la version 4.4.8 :

flatpak run org.wireshark.Wireshark

Filtre multicast, protocole mDNS ipp, excluant les paquets de votre PC :
(eth.dst[0] & 1) && ip.dst>=224.0.0.0 && _ws.col.info matches "(?i)_ipp" && _ws.col.info matches "(?i)0x0000" && ! ip.addr==192.168.11.100

Où 192.168.11.100 remplace l'adresse IP de cet ordinateur (dans la sortie de la commande ip addr).

Le résultat de la recherche de packages mDNS est visible dans la capture d'écran ci-dessous :
mdns2

Comme vous pouvez le constater, le DNS multicast ou mDNS utilise le port 5353. Ainsi, le filtre WireShark pour rechercher les paquets Bonjour peut être considérablement simplifié.

1.6 Service parcouru par Cups

Le service d'assistance parcouru par Cups trouve automatiquement les imprimantes réseau sur le réseau local et crée des files d'attente d'impression dans CUPS. Ainsi, il n'est pas nécessaire d'installer des MFP et des imprimantes s'ils sont situés tasses-parcourues lorsque le système d'exploitation démarre. Découvrir des imprimantes à l'aide d'un service tasses-parcourues cela peut être plus pratique que d'installer manuellement l'imprimante, mais cela ralentit le démarrage de l'impression et augmente la charge du processeur.

Pour plus de détails sur l'utilisation de cups-browsed sous Linux, voir [paragraphe 3.1.3 de la deuxième partie de l'article](/ustanovka-setevykh-printerov-v-linux-chast-2#tasses parcourues).

Le service de navigation par tasses est intégré au système d'exploitation russe Linux Green (un clone de Linux Mint).

2. TASSES

L'administration des imprimantes pour n'importe quelle méthode de connexion s'effectue sur le panneau CUPS - Système d'impression UNIX commun.

2.1 Installation du service CUPS

sudo apt installer des tasses

Démarrage du service CUPS via systemctl, le principal outil de gestion du système d'initialisation SystemD :

sudo systemctl start cups

Vérifiez :

systemctl status cups

Autoriser le démarrage au démarrage de l'ordinateur :

sudo systemctl enable cups

Pour éviter que la fenêtre de saisie du nom d'utilisateur et du mot de passe ne s'affiche à l'ouverture de l'interface web :

sudo adduser your_username lpadmin

2.2 Administration des imprimantes à l'aide du service CUPS

Par défaut, l'administration de CUPS s'effectue via l'interface web à l'adresse de l'ordinateur local uniquement, port 631 :
http://localhost:631/.

Dans l'article, j'envisage de configurer un ordinateur comme client pour l'impression, c'est-à-dire un poste de travail à partir duquel l'impression est effectuée directement vers une imprimante réseau. Si vous souhaitez transformer votre ordinateur Linux en serveur d'impression, lors de l'ajout d'une imprimante dans le système CUPS, cochez la case "Autoriser le partage de cette imprimante".

3. Méthodes d'installation d'une imprimante sous Linux - avec ou sans pilote

3.1. Méthodes d'installation d'une imprimante avec un pilote

3.1.1 Protocole d'impression AppSocket (JetPrint)

Le protocole a été proposé par HP (Hewlett Packard), situé à Palo Alto, Californie, USA. Lors de l'utilisation de AppSocket, les commandes sont envoyées à l'imprimante à l'aide de l'API Socket via le port réseau de l'imprimante :9100/TCP. L'état de l'imprimante est surveillé via le port 9101/UDP(facultatif). Les descriptions du formatage des pages du document sont réalisées en langage PostScript (en abrégé PS) dans le pilote côté PC. Autrement dit, les données sont envoyées à l'imprimante sous une forme préparée.

Avantages :

  • L'imprimante est peut-être « stupide » ou obsolète.
  • facile à installer
  • l'un des protocoles réseau les plus couramment utilisés pour l'impression sur des imprimantes
  • impression rapide. fonctionne à un niveau bas. Pour cette raison, l’impression à l’aide de Socket est appelée impression RAW.
  • L'adresse URI est la plus simple possible, elle contient uniquement l'adresse IP de l'imprimante sur le réseau local et le port 9100.

Inconvénients :
*pas de sécurité. (ne convient pas aux grandes organisations où les imprimantes peuvent être attaquées lorsqu'elles commencent à imprimer beaucoup de pages blanches ou de déchets, et où les données peuvent être interceptées lors de leur transmission sur le réseau local).

  • ne permet pas d'imprimer sur l'imprimante depuis Internet, car les ports 9100 et 9001 sont bloqués sur le pare-feu et il n'est pas sûr de les ouvrir à l'extérieur.
  • ne prend pas en charge le mode sans définir Zero Conf pour Apple Macintosh, etc. Parce que vous devez connaître l'adresse IP statique de l'imprimante.
  • L'adresse IP de l'imprimante doit être fixe. DHCP ne peut pas être utilisé.

Chaîne de connexion :
socket://ip-address

Recherche et vérification de l'adresse IP de l'imprimante

  1. Tout d'abord, recherchez l'adresse IP de l'imprimante (vous pouvez imprimer sa "page de configuration") ou allez dans le menu d'affichage de l'adresse IPv4.
  2. Vous pouvez vérifier la présence du protocole APPSocket avec la commande nmap, qui vérifiera si le port 9001 est ouvert :

sudo apt update && sudo apt install nmap -y
nmap 192.168.1.123 -p 9100

sudo nmap -PU 192.168.1.123 -p 9001


, où 192.168.1.123 est remplacé par l'adresse IP de l'imprimante sur le réseau local.

Comment configurer une imprimante à l'aide du protocole AppSocket

Avant d'installer l'imprimante, vous devez télécharger et installer le pilote à partir du site Web du fabricant de l'imprimante ou du MFP. Le pilote peut être un fichier package avec une extension DEB pour l'installation à l'aide de l'utilitaire "Package Installer" ou de la commande sudo dpkg -i имя_файла.deb ou une archive avec des fichiers, des dossiers et un script d'installation dans Shell - avec l'extension .sh. Si les fichiers se trouvent dans une archive, vous devez d'abord les extraire, puis installer sudo sh filename.sh. Soyez prudent et téléchargez la distribution des pilotes uniquement depuis le site officiel du fabricant de l'appareil ! L'adresse du site officiel du fabricant est généralement indiquée dans le manuel d'utilisation de l'imprimante.

  1. Sur votre ordinateur personnel exécutant Linux, accédez aux paramètres CUPS - dans votre navigateur Web, vous devez saisir dans la barre d'adresse : http://localhost:631/.
  2. Sur la page Web CUPS, sélectionnez l'élément de menu Administration-Ajouter une imprimante
  3. Puis "autres imprimantes réseau"-"AppSocket/HP JetDirect", Cliquez sur Continuer
  4. socket://192.168.1.123- remplacez-la par la véritable adresse IP de l'imprimante des étapes 1 et 2. Cliquez sur Continuer
  5. remplissez le champ "Nom"- pas d'espaces. Par exemple. Pantum. Cliquez sur Continuer
  6. Dans le champ "create", précisez le fabricant, par exemple Pantum. Cliquez sur Continuer
  7. veuillez indiquer modèle d'imprimante indiqué au dos du MFP (imprimante) ou sur l'emballage. Par exemple, Pantum BM5100 Series PS (en). Cliquez "Ajouter une imprimante".

Suite - partie 2
Suite - partie 3
*La fin - partie 4



Publications connexes