Sockets C - htonl()
Résolu/Fermé
Utilisateur anonyme
-
17 déc. 2009 à 22:01
Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 - 21 déc. 2009 à 10:11
Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 - 21 déc. 2009 à 10:11
A voir également:
- Sockets C - htonl()
- Utilisation Sockets C# ✓ - Forum C#
- Socket , c et irc ✓ - Forum Programmation
- C / C++ Socket error sous Linux ✓ - Forum C++
5 réponses
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
18 déc. 2009 à 10:46
18 déc. 2009 à 10:46
je n'ai pas ADDR_ANY sur mon PC.
Le mieux est de regarder dans tes .h la définition de chaque. (je dirai qu'il peut y avoir une diffférence de type)
Un serveur qui n'accepte qu'un IP, je dirai qu'il faut vérifier l'IP du correspondant une fois qu'il est accépté et déconnecté si ce n'est pas le PC autorisé. C'est la méthode la plus simple dans le sens que c'est celle qui s'éloigne le moins des tuto et exemples classique. Il y a surement plus rusé et plus propre.
Le mieux est de regarder dans tes .h la définition de chaque. (je dirai qu'il peut y avoir une diffférence de type)
Un serveur qui n'accepte qu'un IP, je dirai qu'il faut vérifier l'IP du correspondant une fois qu'il est accépté et déconnecté si ce n'est pas le PC autorisé. C'est la méthode la plus simple dans le sens que c'est celle qui s'éloigne le moins des tuto et exemples classique. Il y a surement plus rusé et plus propre.
Merci, mais comment connapître l'ip des personnes connectées ?
Sinon, y a-t-il moyen d'éviter le probleme des NAT... Je voudrais faire un chat, mais le serveur serait chez un pote, donc pourqu'il n'ait pas à configurer sa livebox ou autre box, il faudrait trouver une solution pour que je puisse me connecter en rentrant son IP, mais pour l'instant je ne peux pas me connecter à cause de cette fameuse NAT...
Sinon, y a-t-il moyen d'éviter le probleme des NAT... Je voudrais faire un chat, mais le serveur serait chez un pote, donc pourqu'il n'ait pas à configurer sa livebox ou autre box, il faudrait trouver une solution pour que je puisse me connecter en rentrant son IP, mais pour l'instant je ne peux pas me connecter à cause de cette fameuse NAT...
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
21 déc. 2009 à 08:37
21 déc. 2009 à 08:37
l'ip des personnes connectés est mise dans la structure que tu passes en paramètre à accept().
Il faut être clair sur ce dont on parle. l'IP te ton pote, c'est celui de son pc ou celui d'internet ?
Les IP ne sont valables que dans le sous réseau dans lequel elles sont utilisées, ici, Internet ou la boucle locale.
Qu'est-ce qui te gène avec NAT, c'est simple et efficace, ça évite de se compliquer la vie. En principe un PC local ne peut pas servir de serveur (c'est à dire accepter des connections entrantes) sans configurer la passerelle (ou routeur).
Il faut être clair sur ce dont on parle. l'IP te ton pote, c'est celui de son pc ou celui d'internet ?
Les IP ne sont valables que dans le sous réseau dans lequel elles sont utilisées, ici, Internet ou la boucle locale.
Qu'est-ce qui te gène avec NAT, c'est simple et efficace, ça évite de se compliquer la vie. En principe un PC local ne peut pas servir de serveur (c'est à dire accepter des connections entrantes) sans configurer la passerelle (ou routeur).
Oui, merci.
Mais justement, le nat ca m'énerve, car moi je veux que mon pote soit serveur, donc pour que je me connecte à lui, j'indique son IP Internet (du style 60.233.12.45) et non locale, mais impossible de se connecter à cause de sa box, il faudrait faire du fowarding de port, ce qui me gène.
Mais justement, le nat ca m'énerve, car moi je veux que mon pote soit serveur, donc pour que je me connecte à lui, j'indique son IP Internet (du style 60.233.12.45) et non locale, mais impossible de se connecter à cause de sa box, il faudrait faire du fowarding de port, ce qui me gène.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
21 déc. 2009 à 10:11
21 déc. 2009 à 10:11
tu n'as pas le choix !
Imagine que ton potes ait plusieurs PC. Tu envoies une requete à son IP internet, c'est donc à la box de la traiter.
La box n'offrant pas le service demander, elle s'en occupe pas. Mais métons qu'elle veuille le rediriger vers un PC local, vers lequel devrais elle rediriger l'appel ?
Ce problème est insoluble si tu ne lui dit pas ce qu'elle doit faire. C'est ça configurer la NAT.
Et par défaut tout les routeurs/modem rejettent les demandes de connexion (en effet très peu de gens utilises leur PC en serveur).
En gros, tu veux entrée dans un maison sans porte ni fenêtre, sans en construire. à moins d'utiliser une faille, c'est impossible !
Imagine que ton potes ait plusieurs PC. Tu envoies une requete à son IP internet, c'est donc à la box de la traiter.
La box n'offrant pas le service demander, elle s'en occupe pas. Mais métons qu'elle veuille le rediriger vers un PC local, vers lequel devrais elle rediriger l'appel ?
Ce problème est insoluble si tu ne lui dit pas ce qu'elle doit faire. C'est ça configurer la NAT.
Et par défaut tout les routeurs/modem rejettent les demandes de connexion (en effet très peu de gens utilises leur PC en serveur).
En gros, tu veux entrée dans un maison sans porte ni fenêtre, sans en construire. à moins d'utiliser une faille, c'est impossible !