gethostbyname_ex (nombre de host) extremadamente lento

En el inicio, IPython (qtconsole) llama a socket.gethostbyname_ex(socket.gethostname())[2] para encontrar una lista de direcciones IP que apunten a la máquina. En un servidor Linux que administro esta llamada es extremadamente lenta (> 20s) … lo que tengo problemas para entender, ya que ip addr show parece proporcionar la misma información casi instantáneamente. ¿Hay algo que pueda hacer para que esto sea más rápido? ¿Puede tratarse de un problema de configuración de red (estoy detrás de un enrutador)?

Este problema es independiente de IPython:

 $ time python -c 'import socket; print(socket.gethostbyname_ex(socket.gethostname())[2])' ['192.168.0.102'] python -c 0.07s user 0.02s system 0% cpu 28.190 total 

Gracias.

Tuve un problema similar. Sucedió que mi nombre de host era localhost.localdomain , siendo perezoso al instalar el sistema operativo.

La solución fue darle un nombre sano por sudo vi /etc/hostname y cambiarlo a myname.mydomain y ahora se ejecuta en 1s.