Forum: PC-Programmierung IP-Problem auf Terminalserver?


von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Mangels Terminalserver in  direkter Verfügbarkeit habe ich mal eine 
Frage: Wenn in den unterschiedlichen parallel laufenden Sessions (User) 
eines Terminalservers Hintergrundprogramme laufen, die für eine 
Kommunikation einen TCP-Port offenhalten (listen), dann haben die doch 
alle die selbe IP, oder? Gibts da nur die Möglichkeit über 
unterschiedliche Ports, oder auch noch irgend 'was anderes?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Richtig erkannt. Die IP-Adresse ist für alle auf einem Rechner laufenden 
Programmen gleich; sollen Serverdienste auf Sockets lauschen, muss jeder 
der Serverdienste eine andere Portnummer verwenden.

Das ist auf einem Terminalserver nicht anders als auf einem "normalen" 
Workstationrechner.

Hintergrundprogramme im eigentlichen Sinne sind unter Windows Dienste 
("Services"), und die laufen sowieso nicht in einer Benutzersitzung, 
sondern --wie der Name auch suggeriert-- im Hintergrund. Und den gibt es 
nur einmal.

Es ist also nicht möglich, für mehrere Benutzer mehrere Webserver laufen 
zu lassen, die auf dem gleichen Port "lauschen".

Es bleiben zwei Möglichkeiten:

- unterschiedliche Portnummern verwenden
- unterschiedliche IP-Adressen verwenden

Letzteres setzt die Verwendung mehrerer (statischer) IP-Adressen durch 
den Terminalserver voraus, und die Möglichkeit der Programme, ihren 
Socket auf eine definierte IP-Adresse zu binden. Apache beispielsweise 
kann so etwas.

von 16Bit (Gast)


Lesenswert?

Was hast du überhaupt vor? Könnte in den einzelnen user sessoins nicht 
der Client laufen? Also, wer kommuniziert mit den Terminals?

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Der Terminalserver wird in einer Elektro-Firma genutzt. Darauf laufen 
die Sessions der Büro-Mitarbeiter, die des Chefs und eine oder zwei im 
Lager, jeweils mit spezieller Software (CAD, Office oder Lagerhaltung) 
und einem Outlook. "Dargestellt" werden die Sessions auf ThinClinets.

Ziel ist es, einen Daemon pro Session mitlaufen zu lassen, der die 
Outlook-Kontakte der einzelnen User regelmäßig ausliest (MAPI) und an 
einen Server meldet. Dieser filtert die brauchbaren (vollständige und 
nicht-private), formt sie um und stellt sie den Grandstream-IP-Telefonen 
als Telefonbuch per XML zur Verfügung.

Ursprügliche Idee war es, dass die Daemons auf eine Anfrage von der 
Server-App warten bis sie gefragt werden - dazu müssten sie per TCP 
erreichbar sein. Man könnte es aber auch anderserum machen: Sie senden 
an den Server, falls sich die Anzahl der Kontakte mt Telefonnummer oder 
die Prüfsumme darüber ändert. Im LAN reicht dann vlt. sogar UDP ...

von Bernd H. (geeky)


Lesenswert?

Sofern Ihr da nen Exchange-Server habt könnte die Server-App direkt 
selbst in Exchange nach den Kontakten schauen, dann bräuchte man keine 
Client-App.

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Da ist kein Exchange-Server ... nur eine Office-Version mit entsprechend 
vielen Lizenzen.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Frank Esselbach schrieb:
> Ziel ist es, einen Daemon pro Session mitlaufen zu lassen

Ein Daemon wäre ein Dienst resp. Service, wenn man terminologietreu 
bleiben wollte.

Egal, kann man so machen, nur muss dieser "Daemon" nicht Socket-Server, 
sondern Socket-Client spielen, und alle zusammen übertragen dann und 
wann ihre Daten an die "Server-App".

> nur eine Office-Version mit entsprechend vielen Lizenzen.

Auf einem Terminalserver? Das wird teuer, wenn ihr eine aktuelle 
Officeversion verwenden wollt, richtig teuer. Vermutlich nutzt ihr noch 
eine alte Version ≤ 2003, die kann man noch recht problemlos auf einem 
Terminalserver verwenden. Die Lizenzbedingungen aber für den Einsatz von 
O2K10 in einer Terminalserverumgebung sind ... interessant.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.