È possibile aggiungere un elenco di host specifici solo per un determinato utente? Forse un file host specifico dell'utente?
Questo meccanismo dovrebbe anche integrare le voci in /etc/hosts file.
Risposta accettata:
La funzionalità che stai cercando è implementata in glibc. Puoi definire un file host personalizzato impostando HOSTALIASES variabile d'ambiente. I nomi in questo file verranno raccolti da gethostbyname (vedi documentazione).
Esempio (testato su Ubuntu 13.10):
$ echo 'g www.google.com' >> ~/.hosts
$ export HOSTALIASES=~/.hosts
$ wget g -O /dev/null
Alcune limitazioni:
HOSTALIASESfunziona solo per applicazioni che utilizzanogetaddrinfo(3)ogethostbyname(3)- Per setuid /setgid /setcap applicazioni, libc igienizza l'ambiente, il che significa che
HOSTALIASESimpostazione è persa. ping è setuid root o ha ilnet_rawcapacità al momento dell'esecuzione (perché deve ascoltare i pacchetti ICMP), quindiHOSTALIASESnon funzionerà conpinga meno che tu non sia già root prima di chiamareping.