¿Es posible agregar una lista de hosts que solo sean específicos para un determinado usuario? ¿Quizás un archivo de hosts específico del usuario?
Este mecanismo también debería complementar las entradas en el /etc/hosts archivo.
Respuesta aceptada:
La funcionalidad que está buscando está implementada en glibc. Puede definir un archivo de hosts personalizado configurando HOSTALIASES Variable ambiental. Los nombres en este archivo serán recogidos por gethostbyname (ver documentación).
Ejemplo (probado en Ubuntu 13.10):
$ echo 'g www.google.com' >> ~/.hosts
$ export HOSTALIASES=~/.hosts
$ wget g -O /dev/null
Algunas limitaciones:
HOSTALIASESsolo funciona para aplicaciones que usangetaddrinfo(3)ogethostbyname(3)- Para setuid /setgid /setcap aplicaciones, libc desinfecta el entorno, lo que significa que el
HOSTALIASESse pierde el ajuste. ping es setuid root o se le da elnet_rawcapacidad tras la ejecución (porque necesita escuchar paquetes ICMP), por lo queHOSTALIASESno funcionará conpinga menos que ya seas root antes de llamar aping.