Bonjour à tous,
J'ai un étrange problème lors d'une tentative de connexion à un serveur, disons par exemple google. La connexion fonctionne depuis chez moi (j'ai un simple réseau de 'box'), mais la connexion n'aboutit pas lorsque je lance mon programme depuis le réseau public de mon lycée (qui a bien sûr accès à internet)
Je vous donne la partie connexion de mon code:
Code C/C++ :
WSASATA init;
WSAStartup(MAKEWORD(2,2),&init);
SOCKET s=socket(AF_INET,SOCK_STREAM,0);
// Etablissement de l'ouverture de session
info.sin_family=AF_INET;
info.sin_addr.s_addr=inet_addr("209.85.227.147"); // une adresse IP de google
info.sin_port=htons(80);
connect(s,(struct sockaddr*)&info,sizeof(info));
send(s,aEnvoyer.c_str(),aEnvoyer.size(),0);
char resp[20001];
int nbcaractere=recv(serveur,resp,20000,0);
resp[nbcaractere]='\0';
FermerSocket(&s);
sachant que aEnvoyer est une chaine contenant une demande GET valide.
Pourquoi la connexion n'aboutit pas dans un réseau un peu plus costaud? Le lycée filtre internet, mais firefox et internet explorer accèdent au net sans problème.
Les navigateurs internet utilisent-ils des moyens différents pour dialoguer avec les serveurs HTTP? ou alors mon code a un problème?
Merci de votre aide.