2010-12-15 43 views
3

Nous développons une application intégrée fonctionnant sur un périphérique GPRS autonome (sans système d'exploitation). Nous essayons d'obtenir une adresse IP de nom de domaine. Je pense que nous devrions utiliser un service DNS public, comme Google DNS (8.8.8.8). La question est - quelle est la demande la plus simple que nous devrions envoyer à 8.8.8.8:53 afin de recevoir l'adresse IP de notre domaine?Quel est le moyen le plus simple d'obtenir l'adresse IP d'un domaine?

Encore une fois, nous ne pouvons pas utiliser libresolve ou toute autre bibliothèque similaire. Nous ferons une connexion TCP simple au port 53 de Google DNS, et formaterons notre demande nous-mêmes.

J'ai essayé de comprendre RFC1053 moi-même, mais j'ai échoué. Trop de mots :)

Répondre

0

Je ne suis pas un expert DNS en aucune façon, mais je pensais que DNS utilise généralement UDP plutôt que TCP?

De toute façon, voici un lien vers un page qui décrit la communication en utilisant moins de mots qui pourraient être plus faciles à comprendre que le RFC lui-même. De plus, même si vous ne pouvez pas utiliser la bibliothèque libresolve elle-même, ne pouvez-vous pas regarder une version open source de cette bibliothèque et utiliser le code de l'une d'entre elles (en supposant que la licence est compatible avec votre travail) . Voici un de Apple que j'ai trouvé via google.

+0

Les réponses qui ne font que créer un lien vers une page externe ne sont pas idéales car les liens risquent de mourir. Souhaitez-vous résumer la méthode décrite dans la page que vous liez? – Thomas