Napisałem prosty serwer, który tylko ma wiązywać połączenie z klientem ( na chwile obecną jest to telnet -.- ). Serwer działa na ip 127.0.0.1 i na lokalnym ip livebox tzn.: 192.168.0.10. Jednak zależy mi na tym by serwer dostępny był spoza sieci lokalnej. Czytałem dużo o no-ip i dynDSN jednak program nie działa tak jak powienien. Serwer odbiera masę przychodzących połączeń, a nie można się połączyć przez telnet. Jest jakiś sposób na rozwiązanie tego problemu?
Kod serwera:
#include <sdkddkver.h>
#include <conio.h>
#include <stdio.h>
#include <string>
#include <WinSock2.h>
#include <Windows.h>
#include <iostream>
using namespace std;
void main(){
char message[200];
string strmessage = "";
long answer;
WSADATA wsaData;
WORD DLLVERSION;
DLLVERSION = MAKEWORD(2,1);
answer = WSAStartup(DLLVERSION, &wsaData);
SOCKADDR_IN addr;
int addrlen = sizeof(addr);
SOCKET sListen;
SOCKET sConnect;
sConnect = socket(AF_INET, SOCK_STREAM, NULL);
//addr.sin_addr.s_addr = inet_addr("127.0.0.1");
addr.sin_addr.s_addr = inet_addr("83.10.53.151");
addr.sin_family = AF_INET;
addr.sin_port = htons(1234);
sListen = socket(AF_INET, SOCK_STREAM, NULL);
bind(sListen, (SOCKADDR*)&addr, sizeof(addr));
listen(sListen, SOMAXCONN);
for(;;){
cout<<"Waiting for incoming connection"<<endl;
if(sConnect= accept(sListen, (SOCKADDR*)&addr, &addrlen));
cout<<"Connection was found"<<endl;
}
}
Pewnie problem tkwi w jakimś małym szczególe :(