Como todas las llamadas a DNR se ejecutan asíncronamente, no se obtienen los resultados inmediatamente. En su lugar, se obtiene un objeto resultado dnr. Se puede comprobar este objeto para saber si la consulta está lista y acceder a sus atributos cuando lo esté.
En lugar de esto, se puede hacer referencia a los atributos del resultado directamente, los que provocará una espera implícita hasta que se complete la consulta.
Los atributos rtnCode y cname siempre están disponibles, los otros dependen del tipo de consulta (dirección, hinfo o mx).
1
si la consulta está completa.
El modo más simple de usar este módulo para convertir nombres en cadenas decimales separadas por puntos, sin tener en cuenta los tiempos de espera, etc., es:
>>> def gethostname(nombre): ... import macdnr ... dnrr = macdnr.StrToAddr(nombre) ... return macdnr.AddrToStr(dnrr.ip0)