[PHP] exec: nslookup werkt niet?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • BlueAce
  • Registratie: November 2002
  • Laatst online: 09-01-2021
Ik heb de volgende functie om te checken of een domein een nameserver heeft:

PHP:
1
2
3
4
5
6
7
8
9
10
function got_dns($url)
{   
    exec("nslookup -type=NS ".$url."",$resultNS);
    print "\n<!--";print_r($resultNS);print "-->";
    if(eregi("server can\'t find",$resultNS[3])) {
        return 0;
    } else {
        return 1;   
    }
}


Werkt perfect, alleen niet in een loop met een groot aantal domeinnamen. 3 of 4 tegelijk gaat nog, daarboven krijg ik concreet over "server can't find" berichten.

Kan het zo zijn dat er een limit aan zit of iets dergelijks? Iemand hier ervaring mee?

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Dit heeft niets met PHP te maken, aangezien het commandline tooltje nslookup die fout genereert, en niet PHP. Werk je met Windows of een *NIX systeem?

Verder schat ik dat er op de een of andere manier een cap zit op het aantal keren per tijdseenheid dat je een nslookup doet, maar daar ben ik niet zeker van. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • DJ Buzzz
  • Registratie: December 2000
  • Laatst online: 19-09 08:24
Hmmm, als je toevallig PHP5 hebt, kun je eens kijken naar de volgende functie:

http://nl2.php.net/manual/en/function.dns-get-record.php

Acties:
  • 0 Henk 'm!

  • BlueAce
  • Registratie: November 2002
  • Laatst online: 09-01-2021
-NMe- schreef op maandag 15 augustus 2005 @ 14:58:
Dit heeft niets met PHP te maken, aangezien het commandline tooltje nslookup die fout genereert, en niet PHP. Werk je met Windows of een *NIX systeem?

Verder schat ik dat er op de een of andere manier een cap zit op het aantal keren per tijdseenheid dat je een nslookup doet, maar daar ben ik niet zeker van. :)
Daar heb je inderdaad gelijk in, maar ik pas het toe in PHP in ieder geval op een Linux systeem.

Geen PHP5 voorradig helaas :)

[ Voor 9% gewijzigd door BlueAce op 15-08-2005 15:05 ]


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

Probeer eens een sleep in te bouwen en kijken of het wel werkt.

Denk dat de nameserver je blockt door teveel requests achter elkaar.

Acties:
  • 0 Henk 'm!

  • Sander
  • Registratie: Juni 2004
  • Niet online
Besef wel dat je code een stuk trager wordt met zo'n sleep ;)

Acties:
  • 0 Henk 'm!

  • DJ Buzzz
  • Registratie: December 2000
  • Laatst online: 19-09 08:24
BlueAce schreef op maandag 15 augustus 2005 @ 15:03:
[...]


Daar heb je inderdaad gelijk in, maar ik pas het toe in PHP in ieder geval op een Linux systeem.

Geen PHP5 voorradig helaas :)
Ook al gekeken naar Net_DNS van Pear? Anders is misschien daarvan in de code ook wel te vinden hoe ze het daar doen (en of het dus een probleem is dat bij PHP ligt of dat het een limiet van het systeem is).
Pagina: 1