Question

Plusieurs sites offrent nom d'hôte aux conversions IP, ou dans leur formulation:

  

Requête un domaine DNS serveur de noms   recherche et trouver des informations d'adresse IP   des ordinateurs dans Internet. Convertir   un hôte ou un nom de domaine en une adresse IP   adresse.

Cependant, je n'ai pas été en mesure de trouver des webservices libres offrant cette fonctionnalité. Je suis tombé sur ce webservice chinois mais il ne semble pas fais ce que je veux.

Quelqu'un sait d'un libre?

Précision exactement ce que je veux être en mesure de le faire: Je veux un libre, externe service Web (sur un autre ordinateur que le mien, quelque part dans l'Internet) offrant simple nslookup méthode avec une signature telle que:

IPAddress[] GetIpAddress(string hostName)

Si le résultat est équivalent à ce que je recevrais ici:   http://www.kloth.net/services/nslookup.php

Était-ce utile?

La solution

Vous ne dites pas exactement ce que vous voulez être en mesure de le faire. Cependant, il y a un ou deux types dig C implémentations # tels que:

  

DNS.NET résolveur (C #) - CodeProject

Je l'ai utilisé celui-ci dans le passé et cela fonctionne assez bien.

Mise à jour:

Vous avez déjà cette disposition. Il y a beaucoup de services gratuits DNS tels que Google ou OpenDNS vous pouvez utiliser comme serveurs de noms.

Utilisation construit dans les capacités de .NET, vous pouvez utiliser l'espace de noms et System.Net Dns classe. Il y a deux méthodes statiques, vous pouvez utiliser:

IPHostEntry GetHostEntry(string hostNameOrAddress)

IPAddress[] GetHostAddresses(string hostNameOrAddress)

Les méthodes ci-dessus interrogera les serveurs DNS comme spécifié dans les propres paramètres réseau de l'ordinateur.

Si vous voulez spécifier votre propre résolveur puis utilisez l'outil Dig je l'ai mentionné ci-dessus. La sortie va directement à la console mais vous pouvez modifier pour analyser les résultats en valeurs de retour.

Ajout d'une référence au projet que j'ai pu faire ceci:

Dig dig = new Dig();
dig.DnsResolver = new Resolver("8.8.8.8");
dig.DigIt("stackoverflow.com");

Les résultats retournés ressembler à:

; <<>> Dig.Net 0.0.1 <<>> @8.8.8.8 A stackoverflow.com.net
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53737
;; flags:  qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;stackoverflow.com.net.                 IN      A

;; ANSWER SECTION:
stackoverflow.com.net.          1800    IN      A       74.207.240.60
stackoverflow.com.net.          3600    IN      A       203.169.164.119
stackoverflow.com.net.          3600    IN      A       97.107.142.101
stackoverflow.com.net.          1800    IN      A       69.164.199.155
stackoverflow.com.net.          43200   IN      A       74.207.231.120
stackoverflow.com.net.          43200   IN      A       109.74.195.184

;; Query time: 216 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Mon Oct 04 17:11:48 2010
;; MSG SIZE rcvd: 135

Vous n'avez pas besoin d'un service tiers pour être en mesure de le faire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top