Come stampare via TCP/IP su stampanti PostScript collegate a PC Windows?
  • Questa procedura funziona anche in caso di condivisione Internet attiva
  • Fonte: il tutorial su iharder.sourceforge.net che riporta anche ottimi screenshot che guidano passo passo
  • Queste sono le istruzioni su come stampare su una qualunque stampante (inkjet o laser, colore o b/w), attaccata fisicamente a Windows, con qualità postscript, tramite Mac OS X (e con alcuni accorgimenti anche 9.x, per cui vedere sul sito indicato). La stampa avverrà tramite TCP/IP
  • Le prove sono state effettuate con una HP Deskjet 1120C, inkjet colore, con una HP Deskjet 970C, inkjet colore, e con una Samsung ML-4500, laser bianco e nero, su Windows XP, e il risultato è stato addirittura migliore di quello ottenuto con i drivers su Win XP o - nel caso della HP9770 - del driver di Mac OS. Sul Mac era installato Mac OS X 10.3.1 (Panther).

Ecco in sintesi cosa fare (quasi tutte operazioni da fare su Windows):

  1. su Windows si installano Ghostscript 8 e GSView, due software che emulano postscript, e RedMon, un software che istalla porte virtuali "redirect" (link sul sito di cui sopra). Si installeranno due stampanti "virtuali" su porte IR (redirette) e LPR.
  2. Si installa una stampante Postcript emulata: si sceglie ad es. la Apple Color LW 12/660 (o altra a scelta, ma si badi a sceglierne una che sarà poi pure compresa nell'elenco delle stampanti di Mac OS X), la si connette alla porta virtuale RPT1 e la si chiama ad es. Ghostscript1120, nessuna condivisione (non serve ai fini della stampa da Macintosh, a meno che non si vuole la condivisione per Windows)
  3. Si configura la porta RPT1 dando come "LPD" il percorso di gsprint.exe (es: c:\programmi\ghostgum\gsview.exe) e come "Arguments" -printer "HPDeskJet1120" -color - per stampante colore o -printer "Samsung ML-4500 Series" - per il caso bianco e nero (laser ecc...).
    Attenzione: il nome della stampante deve corrispondere esattamente a quello della stampante reale installata su Windows (tip: in "Stampanti e Fax" clic sul nome della stampante, come per modificare le preferenze, copiare il nome, e poi incollare qui).
    Attenzione anche al trattino "-" finale della stringa, importante per dire a Ghostscript di stampare correttamente.
  4. Ci si assicura che i servizi Unix siano installati ed attivi: in Strumenti Amministrazione | Servizi bisogna attivare in automatico "servizi stampanti TCP/IP", e in Pannello di Controllo | Installazione applicazioni | Installazione componenti Windows si installano i servizi stampa per reti Unix.
  5. Si installa una stampante virtuale su porta LPR collegata alla precedente "via Ghostscript", si collega alla porta virtuale LPR port e si danno come "Nome o Indirizzo" quello del computer (es. "server" o l'IP: 192.168.0.1 ecc...) e come "Nome della Stampante" quello dell'altra stampante virtuale (es. Ghostscript1120) esattamente corrispondente a quello di cui sopra. Si condivide (stavolta è necessario, per poterla vedere dal Mac). Dalle prove pare che il Nome del server non sempre consenta di vedere la stampante in rete, per cui meglio usare l'indirizzo IP, che però deve essere statico e non dinamico. Consideriamo sotto il caso in cui serva anche una condivisione internet tra computers Windows (che avviene in DHCP e IP dinamici), dove si vede come impostare la condivisione internet con IP statici (non è necessario ai fini del nostro discorso, ma si potrà presentare il caso).
  6. Finalmente su Mac: in Print Center (Centro Stampa) si sceglie Stampanti IP, si mette il nome del computer Windows o l'indirizzo (es 192.168.0.1), come Print Queue (Coda di stampa), si mette il nome della stampante LPR condivisa (es GhostscriptLPR) e come Modello Stampante quello usato in Windows (es Apple LaserWriter 12/660 PS, ecco perché si consiglia di sceglierne una presente in entrambi gli elenchi).

That's all folks! ...o quasi ;-)

Mac manda la stampa allo spooler di Windows via TCP/IP; Windows invia i comandi (-printer -"HPDeskJet1120" -color -) a Ghostscript, che li interpreta come fosse PS, e manda i comandi giusti alla inkjet o alla laser per stampe perfette, anche fotografiche.

Problema: con il Firewall di Windows XP Service Pack 2, che chiude le porte delle stampanti dal Mac, inibendo la stampa su Ghostscript e le nostre stampanti virtuali.
Come suggerito da qualcuno su Internet, si può al momento risolvere cos&i; (sperando che non ci siano problemi di sicurezza):
Andare in Connessioni di rete -> (rete internet, adsl, ecc...) -> proprietà -> avanzate
Scegliere "impostazioni" per "Windows Firewall"
Nella scheda "Eccezioni" scegliere "Aggiungi Porta" e aggiungere una porta con un nome che contenga "LPR" (o solo LPR) e numero di porta 515, con TCP attivo
Confermare e uscire, e la stampa avverrà correttamente.


Se la stampante è connessa al server Windows con indirizzo IP statico (o altri computers con indirizzi statici) tutto ok, ma se alcuni computers Windows usufruiscono della condivisione internet Windows, che avviene con DHCP, normalmente questa è installata ("Piccola Rete Domestica") con indirizzi IP dinamici.

In questo caso, a meno di un DNS associato al pool di assegnamento dinamico, insere il nome del computer nelle impostazioni LPR non funziona, quindi bisogna inserire l'IP, ma se questo è dinamico cambia ogni volta…

Ecco la soluzione per conservare la condivisione internet e poter stampare con le stampanti "Ghostscript" su Windows via TCP/IP:

  • nel computer server Windows (es. 192.168.0.1) impostare nella connessione internet (adsl, isdn, o pstn che sia) "condividi connessione", come suggerito dalla procedura standard "Piccola Rete Domestica", così da abilitare normalmente il DHCP, che richiederebbe dai vari computers client indirizzi IP dinamici
  • negli altri computers Windows connessione di rete | proprietà tcp/ip cambiare "ottieni ip" in "utilizza il seguente ip" e mettere ad es. 192.168.0.2 (ecc.), come gateway predefinito quello del server (192.168.0.1), poi - cosa importante - inserire in "Utilizza i seguenti DNS | Server DNS preferito" l'IP del server (nell'esempio192.168.0.1), in modo da poter usare come DNS i DNS del server, e quindi anche quelli della connessione internet sullo stesso server. A questo punto l'indirizzo IP sarà statico, e la connessione internet ancora funzionante
  • spostarsi in "Avanzate" e impostare "Aggiungi i seguenti suffissi DNS" e mettere quello della condivisione internet (che per Window XP è in genere mshome.net). Spuntare "Registra nel DNS gli indirizzi di questa connessione" e "Utilizza suffisso DNS di questa connessione nella registrazione DNS". Questo per l'uso dei DNS del server, come si diceva sopra
  • agire come nel punto 5 di cui sopra, e mettere nelle impostazioni LPR l'IP (statico) del computer (es. 192.168.0.2) e il resto come sopra
    5 nel Mac lasciare tutto impostato su DHCP, per l'uso degli indirizzi dinamici: funziona tutto alla perfezione

A questo punto si può stampare via TCP/IP sulla stampante "Ghostscript LPR" virtuale attaccata a Windows (in realtà una stampante fisica) farle credere di essere una LaserWriter Postscript, sia da Mac sia dagli altri computers Windows della rete, potendo usare la condivisione della connessione internet da tutti i computers della rete, siano essi Windows o Mac.


Solo per Mac OS X 10.4 (e forse 10.3)

“Amoeba spugnosa” ha provato che è anche possibile semplificare la procedura con OS X 10.4 (e probabilmente anche con OS 10.3) considerando che le stampanti Windows sono condivisibili via Samba. Come fare?

  • Nel passo 2 impostare la condivisione.
  • Fermarsi al passo 3
  • Su Mac OS Menù Mela -> Preferenze di sistema -> Stampa e fax premere sul segno “+” per aggiungere una stampante.
    Nella maschera che si apre cliccare sul pulsante “Altre stampanti”.
    Nella finestra appena aperta selezionare “Stampanti Windows”, ed impostare il dominio sulla quale la vostra macchina Windows dotata di stampante risiede.

Appariranno a questo punto le macchine del dominio selezionato, selezionare il computer che ospita la stampante e inserire le eventuali credenziali richieste. Appariranno così le stampanti condivise dal PC. Selezionare quella appena creata con il tutorial, avendo cura di selezionare il modello corretto (nel caso del tutorial è stata usata una 'Apple Color LW 12/660'); premere aggiungi per inserirla nel parco stampanti utilizzabili da Mac OS.
In definitiva abbiamo quindi due metodi: uno completo e uno semplificato.

ATTENZIONE: Le note sono inserite in modo anonimo dai visitatori del sito, e non sono state verificate da chi cura le Faq.
Nota di PiMkO
Ho avuto un po' di problemi al punto 5 e ho tentato di aggirare il problema. Ho semplicemente condiviso (in Win) la stampante virtuale collegata alla porta RPT1 (quella che la FAQ 0234 chiama Ghostscript1120). In OSX, in "Utility di configurazione stampante" -> "Altre stampanti" -> "Stampanti Windows" ho cercato il computer che condivideva la stampante e ho selezionato la stampante virtuale Apple condivisa (come consigliato ho utilizzato la Apple Color LW 12/660). In questo modo non ci sono problemi con IP statici o dinamici e la stampa va bene.

[ Home | Elenco delle FAQ | Forum | Segnalazioni | Risorse | Feed RSS ]