[PHP] gethostbyname() weirdness

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dag mensen,

Kan iemand mij vertellen waarom deze code bij de ene gebruiker iets anders geeft dan bij de andere?

code:
1
2
3
4
5
<?php
echo "1: " . gethostbyname("www.nu.nl.multi.surbl.org"). "<br />\n";
echo "2: " . gethostbyname("nu.nl.multi.surbl.org"). "<br />\n";
echo "3: " . gethostbyname("google.com.multi.surbl.org"). "<br />\n";
?>


Dit geeft bij mij:

1: www.nu.nl.multi.surbl.org
2: nu.nl.multi.surbl.org
3: google.com.multi.surbl.org

Maar bij iemand anders:

1: 82.94.254.4
2: 82.94.254.4
3: 82.94.254.4


Even ter toelichting: iets.multi.surbl.org kun je nslookuppen en dan moet je hetzelfde terugkrijgen als wat je opvroeg, tenzij het 'iets' een spam domein is. In dat geval krijg je een IP terug. Daarmee kun je dus checken of een URL in de surbl blacklist staat.

Vraag rest: waarom werkt het met gethostbyname op sommige hosts wel en bij anderen niet?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Argh ik zat te slapen. Kan iemand hem even naar webscripting trappen?

Acties:
  • 0 Henk 'm!

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 20:50

Pelle

🚴‍♂️

Foei TheMarco! ;)

Acties:
  • 0 Henk 'm!

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 07-11-2023

kvdveer

Z.O.Z.

Het heeft iig niet met php te maken...
Op cygwin:
code:
1
2
3
4
5
6
7
8
9
10
> php gethostbynametest.php
1: www.nu.nl.multi.surbl.org<br />
2: nu.nl.multi.surbl.org<br />
3: google.com.multi.surbl.org<br />

> nslookup www.nu.nl.multi.surbl.org
*** Can't find server name for address 192.168.2.1: Non-existent domain
*** p14228068.net.upc.nl can't find www.nu.nl.multi.surbl.org: Non-existent domain
Server:  p14228068.net.upc.nl
Address:  212.142.28.68


Hij kan het hele domein ook niet via andere wegen resolven...

Localhost, sweet localhost


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
gethostbyname doet blijkbaar toch iets anders dan een nslookup.
Wat doet het scriptje zelf (in php) bij jou dan?

Bij mij werkt nslookup ook niet namelijk maar het script doet wel zijn werk zoals het hoort.

Acties:
  • 0 Henk 'm!

  • Evilbee
  • Registratie: November 2002
  • Laatst online: 21-09 19:55
Wat bedoel je bij iemand anders? Op een andere server?
Dan zou het kunnen liggen aan de configuratie van apache: HostnameLookups moet dan wel op On staan. Zo heb ik het bij mij een keer opgelost

LinkedIn - Collega worden?


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Ik gok dat jouw DNS wel dat domein kent, en die van anderen niet.
Of er is iets gemisconfigged ergens, of de andere DNSsen zijn nog niet upgedate.

Dit is overigens dus eigenlijk een "netwerken" vraag. ;)

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik bedoelde inderdaad dat het bij mij allemaal prima werkt maar bij sommige anderen niet. Dat van die HostNameLookups klinkt aannemelijk. Ga ik eens vragen aan die mensen.

En... tja netwerkvraag, php vraag, allebei eigenlijk dus what's your point?

Acties:
  • 0 Henk 'm!

  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

Verwijderd schreef op vrijdag 03 december 2004 @ 00:17:
En... tja netwerkvraag, php vraag, allebei eigenlijk dus what's your point?
Het zou een configuratiefout kunnen zijn, maar het kan ook zijn dat je dns die server gewoon niet kent.
Dan heeft dit dus helemaal niets met php te maken.

Blog [Stackoverflow] [LinkedIn]


Acties:
  • 0 Henk 'm!

  • TheRookie
  • Registratie: December 2001
  • Niet online

TheRookie

Nu met R1200RT

Returns the IP address of the Internet host specified by hostname or a string containing the unmodified hostname on failure.
Lijkt erop dat je alleen een IP terugkrijgt als de gebruikte DNS server het domein kan resolven, het lijkt mij dat er dus 'iets' met de dns van die 'iemand anders' aan de hand is ?

't lijkt me stug dat nu.nl en google spam domeinen zijn ;)

[ Voor 5% gewijzigd door TheRookie op 03-12-2004 09:30 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Let op: het domein geldt als nietbestaand als het geen spamadres is, en als 127.0.0.2 als het wel een spamadres is (en toevallig geeft `gethostbyname' de hostname terug als hij niet naar een IP adres kan resolven).

De resultaten die je van nslookup krijgt kloppen dus wel.

Waarom het in je script niet werkt op een andere server kan ik niet zeggen (waarschijnlijk een misconfiguratie ergens), maar in elk geval kun je zeggen dat als je een IP terugkrijgt en het is niet 127.0.0.2 dat er iets op de server mis is (en de admin een berichtje sturen ofzo).

[ Voor 10% gewijzigd door Verwijderd op 03-12-2004 11:43 ]

Pagina: 1