AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Frage zu Telnet

Ein Thema von DelTurbo · begonnen am 20. Sep 2012 · letzter Beitrag vom 21. Sep 2012
Antwort Antwort
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#1

Frage zu Telnet

  Alt 20. Sep 2012, 16:11
Hi,
ich habe einen einfachen TCPServer genommen und connecte dort mit Telnet drauf. Nun ist mir aufgefallen das die Client´s "irgendwas" beim Connecten senden.

Nun zu meiner frage. Was senden die? Wie muss ich antworten? Kann man dem Client sagen das er z.b. in den Active mode gehen soll? Oder sein lokales Echo abschaltet? Mit der Indy-Telnet komponente habe ich das nicht hinbekommen, deswegen ein "dummer" TCP-Server. Der lässt den Client so wie er eingestellt ist.

Oder kann man das mit dem IndyTelnet machen? Wenn ja wie? Ich habe das "handshake" mal mitgesnifft. Aber so richtig schlau bin ich daraus auchnicht geworden.

Danke im voraus
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#2

AW: Frage zu Telnet

  Alt 21. Sep 2012, 12:03
Scheint wohl keiner zu wissen... schade. Also ich habe mal geloggt. Folgendes sendet der Client.

255,251,31,255,251,24,255,251,35,255,253,3,255,253 ,1,255,254,31,255,254,24,255,254,35,255,252,3,255, 252,1

Gruss
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Frage zu Telnet

  Alt 21. Sep 2012, 12:11
http://tools.ietf.org/html/rfc854 Seite 14.
z.b. 255 - Data byte, 251 - WILL (option code)

http://pcmicro.com/netfoss/telnet.html
z.b. 31 - Window Size (RFC 1073)
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#4

AW: Frage zu Telnet

  Alt 21. Sep 2012, 12:20
Goil,
danke dir. Ich hatte auch schon nach Telnet gesucht. Aber nur Tausende seiten mit "mist" gefunden. Ich hatte es grade gesehen das es immer 3er blöcke sind. Als ich am rätseln war, kam deine antwort.

Nochmal, vielen dank!!!
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#5

AW: Frage zu Telnet

  Alt 21. Sep 2012, 12:41
Öhm, noch ne "dumme" frage hinterher. Das IndyTelnet kann das alles nicht, oder? Da müsste ich das denn auch "zufuss" machen, richtig?
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
taveuni

Registriert seit: 3. Apr 2007
Ort: Zürich
533 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Frage zu Telnet

  Alt 21. Sep 2012, 13:26
AsyncPro hat eine Telnet Komponente dabei die alles kapselt.
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#7

AW: Frage zu Telnet

  Alt 21. Sep 2012, 13:36
Thx...
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#8

AW: Frage zu Telnet

  Alt 21. Sep 2012, 14:01
Öhm, noch ne "dumme" frage hinterher. Das IndyTelnet kann das alles nicht, oder? Da müsste ich das denn auch "zufuss" machen, richtig?
Definiere "alles"

In IdTelnet.pas sehe ich einige Konstanten, die das Protokoll betreffen. Indy Telnet liefert aber keine GUI mit, daher werden Optionen wie "Window Size" in der Komponente nicht behandelt.

Es ist aber eine komplette "Verhandlung" (Negotiation) der Sitzungsparameter vorhanden, in die man sich einklinken kann.


Delphi-Quellcode:
{ These are the telnet command constansts from RFC 854 }
  TNC_EOR = $EF; // End of Record RFC 885
  TNC_SE = $F0; // End of subnegotiation parameters.
  TNC_NOP = $F1; // No operation.
  TNC_DATA_MARK = $F2; // The data stream portion of a Synch.
                                  // This should always be accompanied
                                  // by a TCP Urgent notification.
  TNC_BREAK = $F3; // NVT character BRK.
  TNC_IP = $F4; // The function IP.
  TNC_AO = $F5; // The function ABORT OUTPUT.
  TNC_AYT = $F6; // The function ARE YOU THERE.
  TNC_EC = $F7; // The function ERASE CHARACTER.
  TNC_EL = $F8; // The function ERASE LINE.
  TNC_GA = $F9; // The GO AHEAD signal.
  TNC_SB = $FA; // Indicates that what follows is
                                  // subnegotiation of the indicated
                                  // option.
  TNC_WILL = $FB; // Indicates the desire to begin
                                  // performing, or confirmation that
                                  // you are now performing, the
                                  // indicated option.
  TNC_WONT = $FC; // Indicates the refusal to perform,
                                  // or continue performing, the
                                  // indicated option.
  TNC_DO = $FD; // Indicates the request that the
                                  // other party perform, or
                                  // confirmation that you are expecting
                                  // the other party to perform, the
                                  // indicated option.
  TNC_DONT = $FE; // Indicates the demand that the
                                  // other party stop performing,
                                  // or confirmation that you are no
                                  // longer expecting the other party
                                  // to perform, the indicated option.
  TNC_IAC = $FF; // Data Byte 255.

...
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#9

AW: Frage zu Telnet

  Alt 21. Sep 2012, 14:17
In die Negotiation hab ich mich eben mal eingeklinkt. Der springt da nur einmal durch, obwohl der client mehr als eine sache schickt. Der schickt folgendes:

SENT WILL NAWS
SENT WILL TERMTYPE
SENT WILL XDISPLOC
SENT DO SGA
SENT DO ECHO

Aber ich werde mich gleich mal damit bissl mehr beschäftigen. Ich wollte das nun erst "zu fuss" über einen normalen TCPServer machen. Aber das ist mehr arbeit als ich dachte

NACHTRAG:
Es klappt. Ich kann endlich dem Client sagen das er kein lokales echo macht. Nun muss ich ihm noch "sagen" das er Active ist. Sollte aber auch kein prob sein.

Danke an alle

Delphi-Quellcode:
procedure TForm1.IdTelnetServer1Negotiate(AContext: TIdContext);
begin
    AContext.Connection.IOHandler.Write(255);
    AContext.Connection.IOHandler.Write(254);
    AContext.Connection.IOHandler.Write(1);
end;
Alle meine Rechtschreibfehler sind Urheberrechtlich geschützt!!

Geändert von DelTurbo (21. Sep 2012 um 14:29 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz