:: VH-R / UPLNK Blog n News

Telnet-Emulator (Beschreibung)

Rund um das Modul CMD-Interpreter

Beschreibung:

Der CMD(Commando)-Interpreter ist (vorerst) in der Programmiersprache Perl geschrieben und ist erreichbar via telnet

telnet gate6.uplnk.de 9996

was ja durchaus auf jedem Computer verfügbar sein sollte.

Mit der CommandLine lassen sich (wie auch in RealLife) Computer meist schneller bedienen und möglicherweise auch effizienter.

Es ist im Laufe der Spielversionen angedacht, diesem CMD-Interpreter nicht nur multiple Betriebssysteme simulieren zu lassen, sondern sogar mit einer eigenen (grundsätzlich einfachen) Makrosprache auszustatten, um sich zum Beispiel eigene Werkzeuge zu bauen, von diesen dann sogenannte Blaupausen zu erstellen, welche auf dem Marktplatz gehandelt werden können und mit diesen dann Werkzeuge reproduzierbar sind.

Der CMD-I wird weitestgehendst modular gehalten. Das gesamte Environment kommt letztlich aus einer Datenbank, in der die Logfiles der einzelnen Computer stehen nebst der gesamten File-Hierarchie und Dateien. (siehe Abbildungen)

Später ist es evtl. notwendig, den CMD-I in C/C++ zu schreiben, um den verbrauchten Speicher zu optimieren und z.B. oben erwähnte Makro-/Interpretersprache unter zubringen.

Benutzung:

Die Benutzung könnte (* da noch nicht implementiert) in folgenden Weisen ausehen:

Version 1:

  1. Benutzer meldet sich im System über die Webseite an,
  2. schaltet dort sein Gateway frei,
  3. meldet sich via Telnet am Gateway mit Username/Passwort an, welches er auch für die Webseite verwendet,
  4. ist das Gateway freigeschaltet, wird die Anmeldung quasi erst entgegengenommen,
  5. der Benutzer arbeitet dann von dort aus innerhalb des VH-WANs weiter, vor allem um Aufträge/Missionen zu erfüllen…

Version 2:

  1. Benutzer benutzt das Telnet Gateway, wann immer er es möchte, egal ob auf der Webseite angemeldet oder nicht.

Version 3:

  1. Wenn der Benutzer das Telnet nutzen möchte, meldet er das über die Webseite an
  2. und erhält einen dynamischen Port,
  3. diesen gibt er dann bei der Verbindung mit Telnet an..

Auf dem Gateway.. und nun?

(folgt…)

Verfügbare Befehle:

Je nach OS sollen später die verschiedenen Befehle angepasst sein, um ein maximum an Spielspaß und Realitätsnähe anzubieten. Demnach würde es solche Unterschiede geben, wie beispielsweise den Inhalt eines Verzeichnisses anzuzeigen, was bei DOS “dir” heißt und bei Linux/UNIX eben “ls”.

Grundsätzlich lässt sich jetzt schon aussagen, das auf allen emulierten Betriebssystemen folgende Befehle verfügbar sein werden, bzw. deren Pedant.

CMDBeschreibung
helpZeigt eine Liste der verfügbaren Befehle
cd wechselt in ein Verzeichnis
cd .. verlässt aktuelles Verzeichnis
DeleteLöscht den gesamten Inhalt eines Verzeichnisses
ShutdownFährt das System herunter
DisconnectTrennt die Verbindung
ExitVerlässt die Konsole
Run Startet das angegebene Programm (funktioniert nur im
Verzeichnis usr, bzw. Programme)

Werkzeuge

Im folgenden nun eine Liste geplanter Standardwerkzeuge, bzw. die Benutzung der InGame-Tools im CMD-I.
Einige der Werkzeuge sind erst vorhanden, wenn sie im Webinterface gekauft wurden!

NameBeschreibungStatus
telnet verbindet sich zu einem anderen Computer im VH-WANPlanung
edit ändert den Inhalt einer Datei. Gilt für Logdateien.Planung
showzeigt den Spielstatus des Rechners/Spielers an.Planung
mailzeigt das InGame-Postfach an.Planung
whoisgibt Besitzer-Auskunft zu einer IP im VH-WAN.Planung
scantestet einen entfernten Computer auf installierte SoftwarePlanung
backuperstellt eine Sicherheitskopie des SystemsPlanung
restorestellt das System wieder her, sofern Sicherheitskopie existiertPlanung
.........

Datenbankinformationen für Entwickler:

 

Logdateien werden in einer seperaten Tabelle abgelegt.
Zu dieser Tabelle gehört ein LogfileID und das Logfile selber.
Dieser ScreenShot ist aber nur eine grobe Idee dazu.

Auf diesen Tabellen ist schön zu erkennen, welche Werte hinter den
einzelnen Konmponenten wie RAM, CPU etc stehen.

Ferner sind die IP-Adressen auslesbar, welche später als 10.47.$IP ..
… verarbeitet werden.

Hier sind die Felder zu sehen, in denen jetzt Zusatzinformationen
enthalten sind, wie Betriebssystem-ID, Betriebssystem-Kennung,
Dateihierarchie.
Außerdem, ob es sich um ein 1 oder Mehrprozessorsystem handelt.

Für das Handling müssen noch markante, bzw. effiziente Unterscheidungsmerkmale gefunden werden, da viele Informationen möglicherweise unsortiert in der DB stehen.

Ideen bisher:
Betriebssysteme

OS-KennungOS-ID
Linux 2.2.x10
Linux 2.4.x11
Linux 2.6.x12
BSD 4.413
Microsoft DOS 2.x20
Microsoft DOS 5.x21
Microsoft Windows 3.x22
Microsoft Windows 9x23
Microsoft Windows NT24
Microsoft Windows XP25
Unix V.130
Unix V.7 31
HP-Unix32
AIX33
XENIX34
Sun OS40
Solaris5.041
OS/250
Mac OS X 10.x70
..80
..90

Dateitypen

DateitypBeispielEndung
Systemdateieno.sys, vmlinuz*.sys
Logdateienkernel.log*.log
Ausführbare Programmescan, ??*.bin oder *.usr
andere Dateien, Datenbanken*.dat(a)

Wenn die Dateien selber eine bestimmte Endung haben, lassen sich diese bestimmt auch einfacher bestimmten Verzeichnissen zuordnen.

Entwickler: amazing, psych0, cru