eccos01
Goto Top

Client-IP bei Citrix bzw. Terminalserver auslesen

hallo,

ich brauche die IP des Clients an einem Citrix-Server bzw. an einem Terminalserver.

Zweck:
Ich benötige eine Umgebunsvariable (analog zu %CLIENTNAME%) deren Inhalt nicht die lokale sondern die IP-Adresse des Thin-Clients ist umd damit arbeitsplatz-abhängige Parameter bei einem Programm zu setzen..

Hat einer eine Idee?

Content-Key: 135757

Url: https://administrator.de/contentid/135757

Printed on: April 20, 2024 at 02:04 o'clock

Member: DerSchorsch
DerSchorsch Feb 11, 2010 at 22:32:30 (UTC)
Goto Top
Hallo,

Powershell und funktionierende Namensauflösung vorrausgesetzt, solltest du mit folgendem Powershell-Befehl die IP des Clients auflösen und in eine Variable (z.B. %clientip%) schreiben können:
<code type=plain"> $env:clientip = [System.Net.Dns]::GetHostAddresses($env:clientname).ToString()

Gruß,
Schorsch
Member: eccos01
eccos01 Feb 12, 2010 at 14:50:41 (UTC)
Goto Top
Hallo Schorsch,

Dein Befehl funktioniert zwar, aber ich bekomme keinen Zugriff auf "clientip".
Das heißt, ich weiß nicht wie ich "$env:clientip" zu einer normalen session-weiten Umgebungsvariable mache, damit ich sie in der Batchdatei verwenden kann.

Ich habe bis jetzt die Powershell noch nie benutzt.

Wenn ich in der Powershell den Befehl eingebe, dann kann ich anschließend mit 'echo $env:clientip' die IP-Adresse ausgeben (aber nur innerhalb der Powershell-Session).

Wenn ich den Befehl aus der Batchdatei aufrufe (mit powershell <befehl>) kann ich auf die Variable mittels %clientip% nicht zugreifen.
Lediglich mit Umleitung in eine Datei und Auslesen der Datei klappt es.

Gibt es einen Weg, dass ich die IP-Adresse in eine session-weiten Umgebungsvariable bekommen?

Gruß
Member: DerSchorsch
DerSchorsch Feb 12, 2010 at 19:20:08 (UTC)
Goto Top
Hallo,

ups, stimmt, so ist die Varaible nur im Powershell-Prozess.

So sollte die Variable aber in die Benutzer-Session geschrieben werden:
$ip = [System.Net.Dns]::GetHostAddresses($env:clientname).ToString() 
[Environment]::SetEnvironmentVariable("clientip", "$ip", "User")  

Gruß,
Schorsch
Member: eccos01
eccos01 Feb 18, 2010 at 09:43:03 (UTC)
Goto Top
Hallo Schorsch,

danke für die Info... hat auch geklappt.

Hast Du auch eine Idee, wenn ich den Eintrag nicht als permanente User-Umgebungsvariable haben möchte... sozusagen nur als Session-Umgebungsvariable?

Gruß
Ingmar