# Whois

In informatica il WHOIS (contrazione dell'inglese Who is?, lett. "Chi è?") è un protocollo per l'interrogazione di database che ospitano informazioni riguardanti gli assegnatari di una risorsa Internet, come nomi di dominio, indirizzi IP e sistemi autonomi, ma è comunemente usato anche per la pubblicazione di molte altre informazioni.
Il protocollo prevede la consegna delle informazioni in un formato leggibile agli esseri umani. L'iterazione corrente è stata preparata dalla Internet Society ed è documentata nella RFC 3912.

## Storia

Il protocollo WHOIS venne creato per dare modo agli amministratori di sistema di cercare sistematicamente i contatti degli amministratori di altri indirizzi IP o nomi di dominio, in modo simile a quanto avviene con un elenco telefonico.
Elizabeth Feinler e il suo team (che aveva creato la directory delle risorse per ARPANET) crearono la prima directory WHOIS nei primi anni '70. Feinler creò un server nel Network Information Center dell'università di Stanford che fungeva da directory in grado di recuperare informazioni rilevanti su persone o entità. Lei e il team crearono i domini, con il suggerimento di Feinler di dividerli in categorie basate sull'indirizzo fisico del computer.
Il processo di registrazione venne stabilito nella RFC 920. WHOIS venne standardizzato all'inizio degli anni '80 per cercare domini, persone e altre risorse relative alle registrazioni di domini e numeri. Poiché all'epoca tutte le registrazioni venivano effettuate da un'unica organizzazione, tutte le interrogazioni WHOIS venivano dirette a un unico server centralizzato. Ciò rendeva molto semplice la ricerca di tali informazioni.
All'epoca della nascita di Internet da ARPANET, l'unica organizzazione che si occupava di tutte le registrazioni di dominio era la DARPA del governo degli Stati Uniti. La responsabilità della registrazione dei domini è rimasta alla DARPA quando ARPANET si è trasformata in Internet negli anni '80. UUNET iniziò a offrire il servizio di registrazione dei domini, ma si limitava a gestire le pratiche che inoltrava al Network Information Center della DARPA. In seguito, la National Science Foundation decise che la gestione della registrazione dei domini Internet sarebbe stata affidata a enti commerciali di terze parti. Nel 1993 venne costituita InterNIC: un'organizzazione sotto contratto con la NSF, composta da Network Solutions, General Atomics e AT&T. Il contratto con General Atomics fu annullato dopo alcuni anni a causa di problemi di prestazioni.
I server WHOIS del XX secolo erano molto permissivi e consentivano ricerche a campione: un'interrogazione WHOIS del cognome di una persona restituiva le informazioni di tutti gli individui con quel cognome; Un'interrogazione con una determinata parola chiave restituiva tutti i domini registrati contenenti quella parola chiave; Un'interrogazione per un determinato contatto amministrativo restituiva tutti i domini a cui quel contatto era associato. Dall'avvento dell'Internet commercializzato, di molteplici società di registrazione e di spammer non etici, tale ricerca permissiva non è più disponibile.
Il 1º dicembre 1999, la gestione dei TLD .com, .net e .org è stata assegnata all'ICANN. In quell'occasione questi domini sono stati convertiti a un modello WHOIS sottile. I client WHOIS esistenti smisero di funzionare in quel momento. Un mese dopo venne introdotto il supporto per la Common Gateway Interface, in modo che lo stesso programma potesse operare una ricerca WHOIS basata sul Web, e una tabella TLD esterna per supportare più server WHOIS in base al TLD della richiesta. Questo è diventato il modello del moderno client WHOIS.
Nel 2005 i domini di primo livello generici erano molto più numerosi rispetto ai primi anni '80. Questo ha portato a una complessa rete di società di registrazione dei nomi di dominio e di associazioni di società di registrazione, soprattutto perché la gestione dell'infrastruttura Internet era diventata più internazionale. Per questo motivo per eseguire una ricerca WHOIS su un dominio è necessario conoscere il server WHOIS corretto e autorevole da utilizzare. Strumenti che effettuano ricerche WHOIS sui nomi a dominio sono diventati comuni e sono offerti da fornitori come IONOS e Namecheap.
In Italia, il registro IIT-CNR è responsabile per i domini .it, per questo è necessario fare richiesta direttamente al sito web dell'istituzione per eseguire una ricerca WHOIS.

### CRISP e IRIS

Nel 2003 una commissione dell'IETF venne formata per creare un nuovo standard per cercare informazioni su nomi a dominio e numeri di rete: Cross Registry Information Service Protocol (CRISP). Tra gennaio 2005 e luglio 2006, il nome provvisorio per questa nuova proposta di standard era Internet Registry Information Service (IRIS). A marzo 2009 le attività del gruppo di lavoro IETF CRISP si sono concluse dopo la pubblicazione di un'ultima RFC (RFC 5144).

## Client
### Client a riga di comando

Originariamente l'unico metodo per poter contattare un server whois era usare un client testuale a riga di comando. In molti casi questo era in una piattaforma Unix oppure Unix-like. I client whois erano (e lo sono ancora) distribuiti come open source. Varie implementazioni commerciali di Unix potrebbero usare le loro implementazioni del client (per esempio, Solaris 7 ha il client whois della Sun Microsystems).
Un client whois a riga di comando tipicamente ha delle opzioni per scegliere a quale host connettersi per inoltrare le query whois, essendo inoltre compilato con un server whois di default. Opzioni addizionali possono permettere di controllare a quale porta connettersi, mostrare ulteriori dati di controllo.
Come molte applicazioni client/server TCP/IP, un client whois prende l'input dell'utente e apre un socket IP al suo server di destinazione. Il protocollo whois è usato per stabilire una connessione alla porta appropriata e spedire la richiesta. Il client aspetta per un responso dal server, il quale poi ritornerà all'utente finale oppure verrà usato per fare ulteriori query. Maggiori dettagli ed informazioni sul protocollo whois si possono trovare negli RFC.

### Client grafici

Il termine "client grafico" potrebbe risultare inesatta per un client whois, dato che tutti i dati che provengono dal server whois sono testo semplice, ed il protocollo è solo uno. Non c'è da fare molta interazione con il server whois. In questo contesto il termine "client grafico" è mantenuto solo per specificare un client whois che gira come un'applicazione in un sistema operativo ad interfaccia grafica, ed inoltre usa gli standard della GUI del sistema operativo per l'interazione con l'utente.

### Client web-based

Con l'avvento del World Wide Web e specialmente con l'allentarsi del monopolio delle compagnie di Network Solutions, guardare le informazioni di whois via web è diventato piuttosto comune. Precedentemente i client whois web-based erano semplicemente il client a riga di comando, dove il risultato dell'output veniva visualizzato nella pagina web con qualche formattazione in più.
Oggigiorno, i client whois web-based solitamente eseguono direttamente le query whois e ne formattano i risultati. Molti di questi client sono software proprietari, creati da domain name registrar come per le compagnie di Network Solutions.
Il bisogno dei client web-based nacque dal fatto che i client whois a riga di comando esistevano solo in Unix e nel mondo dei grandi calcolatori. I computer con Microsoft Windows o Macintosh non avevano client whois, per cui i domain name registrar dovettero cercare un modo per fornire ai loro potenziali clienti l'accesso ai dati whois. Molti utenti finali ancora si affidano a questo tipo di client, anche se ora esistono client sia a riga di comando che grafici per molte piattaforme.

### Moduli Perl

Nel CPAN vi sono disponibili diversi moduli Perl che lavorano con i server whois. Molti di questi non sono aggiornati e non funzionano pienamente con la nuova (2005) specifica del server whois. Ci sono, comunque, molte funzioni utili da derivare come la consultazione dei numeri AS e i contatti dell'intestatario.

## Oscuramento dei dati whois

L'oscuramento dei dati whois, in inglese domain privacy, è un servizio offerto dai fornitori di servizio di registrazione di dominio (registrar).
Attualmente, la Internet Corporation for Assigned Names and Numbers (ICANN) richiede in linea di massima di rendere pubblicamente disponibili l'indirizzo, il numero di telefono e l'indirizzo di posta elettronica del proprietario o gestore di un dominio.
Questa situazione espone i referenti all'utilizzo improprio dei loro dati da parte di spammer, ladri di identità, e altre organizzazioni che sfruttano la disponibilità di informazioni private.
Il cliente può pagare per oscurare o rimpiazzare i dati dell'utente con i dati di un servizio di inoltro. Normalmente il gestori del registro raccolgono i dati legati al dominio e il suo referente. In alcuni casi questi dati possono essere forniti a terzi che ne dovessero fare richiesta.
Nel caso in cui il provider voglia effettivamente rendere ignoto il proprietario di un dominio, dovrebbe custodire i dati in località non soggette all'obbligo di fornitura dei dati e accordarsi per i pagamenti in maniera non tracciata. Tali livelli di anonimità potrebbero essere in contrasto con la filosofia e i requisiti di ICANN.
Il livello di oscuramento possibile varia con le estensioni. Ad esempio, negli Stati Uniti, la National Telecommunications and Information Administration (NTIA) ha stabilito che per i domini .us non sarà possibile l'oscuramento.