Verbindung zum Router(socket,Telnetport)



  • Hallo,

    bin nicht wirklich fit in C++, ich wollte jetzt eine Verbindung über sockets zum Router herstellen, der ist übrigens konfigurierbar über Telnet.
    Leider komm ich beim part mit dem Passwort nicht weiter, vielleicht kann mir einer helfen.
    Hab jetzt versucht mit send(s,"passwort".... mich einzuloggen, leider klappt das nicht.

    Hier der Code (achtung ist nicht wirklich schön)

    #include <windows.h>
    #include <stdio.h>
    #include <iostream>
    #include <winsock.h>
    
    int main(void)
    {
    	WSADATA wsa;
    		if (WSAStartup(MAKEWORD(1, 1), &wsa))
    		{
    			printf("WSAStartup() failed, %lu\n", (unsigned long)GetLastError());
    			return EXIT_FAILURE;
    		}
    
    	using namespace std;
    
    	int s;
    	struct sockaddr_in addr;
    	s = socket(AF_INET,SOCK_STREAM,0);
    	if (s==-1)
    	{
    		cout<<"Fehler beim erstellen des Socket!"<<endl;
    		return 1;
    	}
    
    	addr.sin_addr.s_addr = inet_addr("192.168.16.1");
    	addr.sin_port= htons(23);
    	addr.sin_family=AF_INET;
    
    	if (connect(s,(struct sockaddr*)&addr,sizeof(addr)) == -1)
    	{
    		cout<<"Fehler beim verbinden auf Port 23"<<endl;
    		return 1;
    	}
    
    	bind(s,(SOCKADDR*)&addr,sizeof(addr));
            send(s,"HIER WÜRDE DAS PASSWORT STEHEN",10,0);
    
        closesocket(s);
    }
    

    Bin ich hier auf dem völlig falschen Dampfer?



  • Wozu soll das gut sein, hat der Router kein Konfigurationsmenü?
    Wenn, dann würde es nur bei dir lokal funktionieren. Private Adressen werden nicht im Internet geroutet.

    das senden kann man so machen:
    ...
    char pwd[] = "passwort";
    ...
    send(s,pwd,sizeof(pwd),0);

    Den Rückgabewert von bind solltest du prüfen.



  • warum nutzt du nich keybd_event ?

    dann kanste die tasten simuliren , die du eingeben willst 😉



  • Danke dür die Tips den keybd_event werd ich mir mal näher anschauen.
    Das ganze ist nur zum üben gedacht, deshalb habe ich auch nicht alle Rückgabewerte getestet, ich weiss sollte man machen.


Anmelden zum Antworten