Pourquoi la recherche de bibliothèque standard Go La fonction manque de paramétrage du serveur*
La commande nslookup permet de spécifier un serveur DNS , tel que nslookup quelque part.com some.dns.server. Cependant, la fonction dnsclient de la bibliothèque standard Go semble charger uniquement la configuration à partir de /etc/resolv.conf.
On pourrait se demander s'il existe une fonction de bibliothèque standard qui fournit la fonctionnalité équivalente, telle que :
func LookupTXT(name string, dnsServer string) (txt []string, err error)
Réponse
La bibliothèque standard Go ne fournit pas une telle fonction qui prend un serveur DNS explicite paramètre. Cela est principalement dû à son engagement à fournir une interface cohérente et fiable pour la résolution de noms, même dans les scénarios où il existe plusieurs serveurs DNS potentiels.
Au lieu de cela, les fonctions Lookup*** s'appuient sur la configuration du résolveur par défaut spécifiée. dans /etc/resolv.conf. Cette approche garantit un mécanisme de résolution cohérent à tous les niveaux, évitant les incohérences ou complexités potentielles résultant du paramétrage manuel du serveur.
Bibliothèque alternative
Bien que la bibliothèque standard ne fournisse pas de Fonction Lookup*** avec un paramètre serveur, il existe des bibliothèques tierces qui offrent des fonctionnalités similaires. Par exemple, la bibliothèque github.com/miekg/dns offre un contrôle plus granulaire sur les requêtes DNS, y compris la possibilité de spécifier un serveur DNS cible.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!