Est-il possible d'ajouter une liste d'hôtes qui ne sont spécifiques qu'à un certain utilisateur ? Peut-être un fichier hosts spécifique à l'utilisateur ?
Ce mécanisme devrait également compléter les entrées dans le /etc/hosts fichier.
Réponse acceptée :
La fonctionnalité que vous recherchez est implémentée dans la glibc. Vous pouvez définir un fichier d'hôtes personnalisé en définissant le HOSTALIASES variables d'environnement. Les noms de ce fichier seront récupérés par gethostbyname (voir documentation).
Exemple (testé sur Ubuntu 13.10) :
$ echo 'g www.google.com' >> ~/.hosts
$ export HOSTALIASES=~/.hosts
$ wget g -O /dev/null
Certaines limites :
HOSTALIASESne fonctionne que pour les applications utilisantgetaddrinfo(3)ougethostbyname(3)- Pour setuid /setgid /setcap applications, la libc assainit l'environnement, ce qui signifie que les
HOSTALIASESréglage est perdu. ping est setuid root ou reçoit lenet_rawcapacité lors de l'exécution (car il doit écouter les paquets ICMP), doncHOSTALIASESne fonctionnera pas avecpingsauf si vous êtes déjà root avant d'appelerping.