loom2006
Goto Top

Netbios, Computername auslesen

HI und schönen Tag,

Ist es möglich mit einer der bisher benutzen Sprachen (PHP, html, js etc.) den Computernamen des Webseiten aufrufenden PC's / Mac's / Unix etc. auszulesen?

Danke @ll

Stev

Content-ID: 176608

Url: https://administrator.de/forum/netbios-computername-auslesen-176608.html

Ausgedruckt am: 23.12.2024 um 01:12 Uhr

StefanKittel
StefanKittel 22.11.2011 um 08:55:34 Uhr
Goto Top
Moin,

schau mal hier: http://www.zendas.de/service/browserdaten.html

Der Hostname des PCs ist aber nicht dabei.
Dafür benötigst Du dann eine Skriptsprache auf dem PC wie z.B. Java (Script).

Stefan
loom2006
loom2006 22.11.2011 um 17:13:38 Uhr
Goto Top
HI Stefan, Danke für Deine Antwort.

Da Javascript nur im Browser läuft bekomme ich über "hostname" ja auch nur den Namen des Servers und nicht des darauf zugreifenden Clienten.

Also müsste das am Schluss nur per Java realisierbar sein, wozu aber ein Plugin laufen müsste bzw. lokal auf dem Gerät des Clients Java installiert und authorisiert ist die Daten an die Webseite zu schicken.

Also kann man dann sagen das es definitiv nicht möglich ist per Serverseitigen Scripts den Netbiosnamen eines PC's auszulesen?

Danke nochmal.

Stev
BillyBunny
BillyBunny 22.11.2011 um 20:06:09 Uhr
Goto Top
Servus,

probier mal das und modifizier das evt. nach Deinen Bedürfnissen....


IP bestimmen
$ip = getenv('REMOTE_ADDR');
echo("» ");
echo("Eigende IP ");
echo ($ip);
echo "<br>";

IP auflösen und Host bestimmen
$host = gethostbyaddr($ip);
echo("&raquo; ");
echo("Eigender Host ");
echo ($host);


Vielleicht hilft das schon mal nen Schritt weiter

Gruß
BB
loom2006
loom2006 22.11.2011 um 23:39:32 Uhr
Goto Top
Hi BillyBunny,

wenn ich das bei mir vor Ort teste dann kommt folgendes raus:

» Eigende IP 200.88.145.xxx
» Eigender Host xxx-xxx.codetel.net.do

also ist bei meinem Modemrouter Schluss...

Also kein Auslesen des Netbiosnamen möglich.

Richtig?

Gruss
Stev
BillyBunny
BillyBunny 23.11.2011 um 07:55:43 Uhr
Goto Top
Hm,. mist.

Aber ich bin mir ziemlich sicher dass es irgendwie geht.

Vielleicht per VB oder JavaScript.... der lokale Hostname ist ja irgendwo gespeichert und das muss man
doch irgendwie auslesen können mit ner Funktion.

Habs nur noch nie gebraucht, von dem her würd ich mal googlen und schaun was da so rauskommt.

Gruß
BB
loom2006
loom2006 23.11.2011 um 16:09:31 Uhr
Goto Top
Das ist mein Problem an der Sache, ich muss es nicht, ich will eigentlich nur wissen ob es denn geht.

Und lt. Google und Co gibt es zu viele Aussagen das es eigentlich nicht funktionieren dürfte, da Du damit ja schon aus dem Browser heraus auf das lokale Computerprofil zugreifen müsstest, aber keiner hat es bisher definitiv verneint.

Also um sicher zu sein und die Streitfrage endlich zu klären dachte ich frage ich euch alle mal, da ihr fast täglich damit zu tun habt...

Lt. self.html etc. hab ich auch nix finden können das es per Javascript geht.
nur browserspezifisch eben:

<script language="JavaScript">  
function fenster()
{
var win;
var name_des_browsers;
var codename_des_browsers;
var version_des_browsers;
var name_des_browsers_http;

name_des_browsers=navigator.appName;
codename_des_browsers=navigator.appCodeName;
version_des_browsers=navigator.appVersion;
name_des_browsers_http=navigator.userAgent;

win.document.write("<h2><center>Dein System</center></h2>");  
win.document.write("Browser: " + name_des_browsers +);  
win.document.write("Codename: " + codename_des_browsers +);  
win.document.write("Version: " + version_des_browsers +);  
win.document.write("Browser: " + name_des_browsers_http +);  
}
</script>
<body onload="fenster()">  
</body>

Also wie nun? Geht es oder nicht? Oder besser hat es je einer gemacht?
face-smile face-smile
BillyBunny
BillyBunny 23.11.2011 um 18:20:33 Uhr
Goto Top
Für PHP könnte vielleicht das gehen:

Alledings nur für Windows-Maschinen:

$getkey = shell_exec("reg query HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName\ComputerName 2>&1");
echo $getkey;

Irgendwie muss das schon in die Richtung gehen.... Auf jeden Fall bin ich fest der Meinung dass es gehen muss... auch wenn ich es noch nicht
beweisen kann face-smile

Gruß
BB
loom2006
loom2006 23.11.2011 um 18:53:13 Uhr
Goto Top
HI BB,

dann bekommst Du doch aber nur den Key des Servers und nicht den des Clients oder seh ich da was falsch?


Das ist denke ich das grundlegende Problem an der Sache das man Serverseitig versucht lokal zuzugreifen was nicht funktionieren dürfte (ausser mit Java o.ä. nach vorheriger Authorisierung)
Stev
BillyBunny
BillyBunny 23.11.2011 um 19:17:37 Uhr
Goto Top
Hm... möglich...

ich kanns hier net ausprobieren.... leider.

Hm... da müsste man mal in Manual von der Funktion schauen ob shell_exec dann lokal auf dem "browsenden" System ausgeführt wird und den Wert übergibt oder tatsächlich auf der
Maschine auf der PHP läuft.... so genau kann ich das spontan auch nicht sagen...

Und ich meine jetzt mal... ein Hostname ist ja jetzt auch nicht soooo das schützenswerte Geheimnis.... von dem her bin ich mir immer noch sicher dass es irgendwie geht.

Ich mein Wenn Du ne eigene Webseite hast... Du siehst ja auch in den Statistiken alles mögliche... welcher Browser, welche Version, u.s.w. ... da dürfte der Hostname eigentlich
auch nicht sooo schwer sein.... gehn wirds bestimmt... nur das WIE ist die Frage face-smile Das es nicht geht glaube ich jetzt einfach mal nach 27 Jahren IT-Erfahrung nicht *LOL*

Gruß
BB
Biber
Biber 23.11.2011 um 19:26:38 Uhr
Goto Top
Moin BillyBunny,

Zitat von @loom2006:
Das ist denke ich das grundlegende Problem an der Sache das man Serverseitig versucht lokal zuzugreifen was nicht funktionieren
dürfte (ausser mit Java o.ä. nach vorheriger Authorisierung)
Stev
Das ist nicht ganz richtig so.

Der Server kennt den Computernamen des Clients auch nur dann, wenn er vom Client "bewusst" übergeben wird.
Also z.B. wenn denn bei einer Anmeldung diese information vorgesehen ist - z.B. in einer einer neuen Connection zu einem Datenbank/Fileserver.

Ein Server kann niemals den Computernamen eines Clients auslesen (im Sinne von auf dem Client lesen/auf dem Server anzeigen/auswerten), solange dieser Computername nicht explizit (oder defaultmäßig) mit übergeben wird.

Z.B. bei Datenbankzugriffen muss das auch, denn unter Umständen werden Anfragen ja über mehrere Zwischenrechner (Appz-Server/Gateways) weitergereicht und dennoch will der [Datenbank]-Server ganz am Ende nicht nur IP und LoginName wissen, sondern auch den Rechnernamen [und die zugreifende Applikation].

Grüße
Biber
loom2006
loom2006 23.11.2011 um 21:35:08 Uhr
Goto Top
HI!

habs getestet auf dem webspace bei mir da geht es scheinbar nicht.

Keine Fehlermeldung aber auch keine Ausgabe, denke da ist shellexec nicht erlaubt.
loom2006
loom2006 23.11.2011 um 21:43:27 Uhr
Goto Top
Zitat von @Biber:
Moin BillyBunny,

> Zitat von @loom2006:
> ----

Der Server kennt den Computernamen des Clients auch nur dann, wenn er vom Client "bewusst" übergeben wird.
Also z.B. wenn denn bei einer Anmeldung diese information vorgesehen ist - z.B. in einer einer neuen Connection zu einem
Datenbank/Fileserver.

Dann würde diese Info aber beim Client doch abgefragt sei es per Programm oder Benutzereingabe o.ä. richtig?
(Facebook fragt bspw. nach dem Computernamen beim erstmaligen anmelden auf einem neuem Device mit schon vorhandenen Logindaten bei Facebook )

Mir ging es um das automatische Auslesen des Namens und das bestätigst Du uns ja hiermit das es def. nicht geht. Oder?
Bzw. kennt denn einer Browser wo man solche Sachen hinterlegen kann damit sie bei jedem Verbindungsaufbau zu Seiten mitgesendet werden?

Gruss
Stev
Biber
Biber 23.11.2011 um 22:04:51 Uhr
Goto Top
Moin loom2006,

Zitat von @loom2006:
Dann würde diese Info aber beim Client doch abgefragt sei es per Programm oder Benutzereingabe o.ä. richtig?
Ja.
Ganz normales Beispiel: Wenn ich auf mit einem Neueren-Windows-Rechner auf einem anderen Rechner in einer Domäne remote anmelden können will, dann muss der Computer(name) das auch dürfen, nicht nur ein bestimmter User.
Andernfalls kommt die Meldung "Diesem Computer wurd nicht der erforderliche Anmeldetyp erteilt."
In diesem Fall ist es klar, dass "der fragende Computer" bei seiner Anfrage auch den Computernamen mit übergibt.
Hier hat der fragende Computer aber auch einen gewissen Leidensdruck, diese Information rausgeben zu müssen, weil... sonst geht es nicht weiter.

Mir ging es um das automatische Auslesen des Namens und das bestätigst Du uns ja hiermit das es def. nicht geht. Oder?
Meiner Meinung nach geht es nicht - auf Registrywerte kann nicht pauschal und erst recht nicht remote zugegriffen werden.
Und über so lustige Krücken zu gehen wie "ich löse die Environmentvariable %computername% auf ..."
Ja nee - das ist in etwa so sicher wie meine Rente.

Grüße
Biber
loom2006
loom2006 24.11.2011 um 02:29:35 Uhr
Goto Top
Danke Biber und BB!
Sollte es doch noch irgendwem hier einfallen wie es doch funktionieren könnte dann immer raus damit bis dahin bleibt das für mich "das geht nicht".

CU
Stev

Ps: Wenn ich das hier als gelöst markiere kann dann trotzdem noch jemand etwas dazu verfassen?
Biber
Biber 25.11.2011 um 15:07:34 Uhr
Goto Top
Moin loom2006,

Zitat von @loom2006:
Ps: Wenn ich das hier als gelöst markiere kann dann trotzdem noch jemand etwas dazu verfassen?

"Gelöst" bedeutet nur, dass dieser Beitrag nicht mehr auf den vielen Auswertungslisten für "Unerledigtes" erscheint.
Und das MitleserInnen oder über Suchmaschinen Gestrandete hier eine Antwort auf die Frage im Eröffnungsbeitrag erhoffen können.

Nur wenn der Beitrag explizit "Geschlossen" ist, dann können keine weiteren Kommentare gepostet werden.


Ich als Hobby-Moderator mag in "meinen" Bereichen lieber "erledigte" Beiträge.als "offene".

Grüße
Biber
loom2006
loom2006 25.11.2011 um 18:04:21 Uhr
Goto Top
somit ist dieser Beitrag als gelöst anzusehen face-smile