PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Namen des Clients rausfinden


tapferesschneid
16.07.2003, 21:35:19
Hallo,

vor Urzeiten war ich mal mit meinem Standard-W98 auf so einer Seite, auf der man u. a. seine Ports checken lassen konnte.

Dort wurde ich gleich mit »Hallo, Schneiderlein« begrüßt, meinem Rechnernamen, den das dortige Script irgendwie über den offenen Port 139 oder so ausgelesen hatte (keine genaue Ahnung).

Weiß jemand, wie ich so eine Begrüßung mit PHP ereichen kann? Meine bisherige Suche ergab die Variable $REMOTE_HOST, die aber nix bringt, vielleicht aber auch nur nicht, weil mein eigener Port 139 jetzt zu ist ...

Danke

Tapferes Schneiderlein

chris17
17.07.2003, 11:04:07
Hi,
probier mal das...
<?php
$ip = $_SERVER['REMOTE_ADDR'];
echo "IP: $ip";
$host = gethostbyaddr($ip);// <- Das da
echo "<br>";
echo "HOST: $host";
?>
Gruss

chris17
Ups, das gibt den Hostnamen aus, und nicht den Rechnernamen...

tapferesschneid
17.07.2003, 12:48:54
Ja, das hatte ich auch schon probiert.

Da ich $REMOTE_HOST in mehreren Quellen gefunden habe, würde mich mal interessieren, ob das der richtige Weg wäre oder ob ich mich in bisher unbekannte pfsockopen-oder-ähnlich-Welten wagen muß, um per NetBIOS den Namen zu finden (andere haben's ja auch geschafft ;-)

Wer will, kann ja mal http://ts.musketa.de anklicken und testen, ob er seinen Rechnernamen sieht (und es dann hier reinschreiben).

Der Code hinter dem Link:


echo 'REMOTE_ADDR: '.$REMOTE_ADDR.
'<br>REMOTE_HOST: '.$REMOTE_HOST.
'<br>gethostbyaddr(): '.gethostbyaddr($REMOTE_ADDR);

c4
17.07.2003, 12:58:17
Der Host hat nix mit dem Namen des Rechners zu tun. Naja, mitunter schon, aber dann müsste man ISP sein, damit das zutrifft und das sind wohl die wenigsten hier....

Ich glaube auch nicht, dass man den Namen ermitteln kann. Hab ich noch nicht von gehört. phpinfo() spuckt dazu halt auch nix.

overclocker
17.07.2003, 13:05:50
ja, c4 hat Recht!
aber mit einigen Programmen, wie z.B. LANGuard kann man ja manchmal auch den Rechnernamen rausbekommen (wenn port 139 nicht gesperrt ist). Deswegen denke ich schon, dass man das ausgeben kann..
Vielleicht ne Verbindung über fsockopen() zu port 139 und dann in den entsprechenden RFCs mal die Befehle fürs NetBIOS rauskriegen :)
Ist aber alles nur ne idee..

cu