# Login per Telnet auf Router



## lebenlechzer (13. Jul 2006)

Hallo!

Ich hab hier eine Liste von IP's (Router), denen alle eine bestimmte Konfiguration reingestampft werden muss.
Um da ganze nicht händisch bei allen zu machen, versuche ich das ganze mit Java Sockets über Telnet zu lösen.

Wenn ich mich mit einem Socket auf Port 23 verbinde, dann erhalte ich auf dem OutputStream zuerst einige Zeilen Beschreibung des Routers. Dann steht "Username: ". Hier muss dann der Benutzername eingegeben werden (später auch PW usw). Ich zeige euch hier mal einen Ausschnitt aus meinem Programm:


```
public void runCommands(DefaultTableModel dtm, int[] selectedRows, JTextArea ta) {
		for(int i = 1; i <= selectedRows.length; i++) {
			try {
				String line;
				Socket socket = new Socket((String) dtm.getValueAt(selectedRows[i-1], 1), 23);
				PrintStream out = new PrintStream(socket.getOutputStream());
				BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
             //Hier muss nun die Kommunikation stattfinden, bei der Username, Passwort etc. eingegeben werden.
         } catch (UnknownHostException e) {
				e.printStackTrace();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
}
```

An der markierte Stelle muss eben alles getätigt werden.

Wie kann ich da denn abfragen, ob Telnet nun eine Eingabe erwartet oder so?

Ich hoffe auf Hilfe,
danke


----------



## foobar (13. Jul 2006)

Entweder du implementierst das Telnet-Protokoll siehe RFC oder du verwendest eine Lib z.b. die hier http://www.gnu.org/software/kawa/api/kawa/Telnet.html oder sowas: http://jakarta.apache.org/commons/net/

P.S. Benutz mal die Suche, du bist nicht der erste der sowas sucht.
http://www.java-forum.org/de/viewtopic.php?t=17849&highlight=telnet+java
http://www.java-forum.org/de/viewtopic.php?t=17849&highlight=telnet+java


----------



## lebenlechzer (13. Jul 2006)

Ich habe die Suche bereits genutzt und nichts wirklich passendes gefunden.

Danke für die Info, werd mich da mal umsehen und mich ggf. nochmal melden.


----------

