Trouver l'IP derrière un Routeur pour faire communiquer des winsocks
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 2013
-
25 mars 2009 à 20:32
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
29 mars 2009 à 17:34
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 26 mars 2009 à 08:24
il te faut configurer ton routeur.
les clients se connectent a ton routeur, en réalité, sur un port défini dans le programme client.
il faut que tu paramètre ton routeur pour qu'il fasse une redirection de port.
en gros, rediriger les communications effectuées sur le port spécifié vers ton ordinateur serveur.
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 20131 26 mars 2009 à 18:10
bonsoir
j'ai bien compris et appliquais qu'il fallait un port bien défini entre le serveur et le client.
Mais comment rediger un port specifique du routeur vers l'ordi serveur???
est il possible d'effectuer cette opération par une commande valable sur tout routeur???
car j'aimerai que mon logiciel puisse être utilisé, sans que l'utilisateur ait à se soucier de faire des bidouilles des manip pour rendre son poste serveur!!
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 mars 2009 à 00:48
Salut
Oui, dans la conf de ton routeur, il faut configurer une "règle NAT"
Il te demandera le n° du port entrant (les sortants n'ont aucun verrouillage) + l'adresse IP de ta machine locale qui devra répondre sur ce port.
Le routeur joue simplement le rôle de filtre : Si une demande arrive sur le port X, le transmettre au PC dont l'IP est Y.
Tu dois même pouvoir réorienter sur un autre port local de ton PC serveur, si besoin.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 20131 27 mars 2009 à 18:02
merci jack
et ses manoeuvre ne peuvent se faire que sur le routeur avec je suppose le logiciel asapté de confiuguration du routeur et ceci étant bien évidement différent d'un routeur à l'autre, donc pas moyen de créer une procédure logiciel pour tous?
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 20131 27 mars 2009 à 18:46
resalut jack
j'ai vu ton code "IP publique pour tout le monde" http://www.vbfrance.com//code.aspx?ID=6135 il n'y a pas d'autres moyen de trouver l'adresse IP derrière un routeur?
Car comme je le disais, cette méthode à l'inconvénient que si la page internet change il faut adapter le code!
Une petite confirmation: si j'utilise ta méthode et que j'obtiens mon adresse IP et que j'arrive à rerouter mon routeur je pourrais communiquer cette IP à mon client qui pourra connecter son winsock client à mon winsock serveur?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 28 mars 2009 à 02:14
Re
Connaitre son IP public est facile grace à quelques sites ou ta propre page sur le net.
En effet, sous PHP, il est facile, côté serveur web, de connaitre l'adresse IP de la 'personne' qui se connecte. Il peut donc facilement la montrer.
Exemple : www.whatismyip.com ou encore http://whatismyipaddress.com
Donc, oui, tu la transmets au logiciel client qui pourra ainsi tenter de se connecter chez toi, moyennant la fameuse règle NAT sur ton routeur.
Pour accéder à l'interface de ton routeur, il te suffit de taper l'adresse IP de celui-ci sur ton réseau.
Classiquement, c'est 192.168.1.0 ou 1 ou 162.168.0.0 ou 1
Si ton routeur est de génération récente, il doit même être repéré parmi les connexions dans tes "favoris réseau" sous Windows.
Si ton adresse IP change fréquemment, tu avoir recourt à un petit logiciel que tu feras tourner sur ton poste serveur.
Il te suffit de t'inscrire gratuitement chez http://dyndns.com et de charger ce petit logiciel (DynDNS Updater).
Une fois que tu as créé un compte, tu crées un "Host" que tu nommeras.
Régulièrement, le logiciel ira donner signe de vie aux serveurs de dyndns.org pour qu'ils connaissent ton IP.
Pour accéder à ton poste, le logiciel client n'aura qu'à questionner monNomDeHost.dyndns.org et il sera automatiquement réorienté chez toi (à condition que le petit logiciel ait tenu à jour l'IP)
Comme ça, plus de souci d'IP
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 20131 28 mars 2009 à 15:03
bonjour
quand tu dis "ou ta propre page sur le net" qu'est ce que tu veux dire la page de démarrage d'internet? ou alors une page perso hébergé sur mon FAI?
Tu me donnes deux exemple de site pouvant fournir l'adresse IP, je suppose qu'en analysant ces pages on retrouve l'adresse IP, mais dans une page autre qui n'est pas dédié à la recherche d'adresse IP on pourrait tout demême retrouver l'adresse IP????
"Pour accéder à l'interface de ton routeur" là je pense qu'avec la propriété localIP du winsock je vais avoir l'adresse du routeur! mais une fois qu'on a cette adresse qui permet de communiquer avec le routeur comment faire pour appliquer une "règle NAT" ????
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 28 mars 2009 à 16:10
Re
Sa propre page perso, oui.
Voilà le code PHP à mettre en ligne pour récupérer une page HTML facile à analyser sous VB6 avec une interrogation avec le composant INet et sa méthode OpenURL.
Place ce code dans le fichier index.php de la page www.monsiteperso.chezfournisseur.fr/monip :
<?
//
// Permet d'afficher l'IP du client (pour le NoIP)
//
//
$HTTP_SERVER_VARS = $_SERVER;
$client_ip = ( !empty($HTTP_SERVER_VARS['REMOTE_ADDR']) ) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ( ( !empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR );
echo 'IP : '.$client_ip;
?>
Ton routeur ADSL a sa propre adresse IP, ce n'est pas la même que celle de ton PC que tu récupèrerais avec LocalIP de ton WinSock.
Pour y accéder, il te suffit d'ouvrir un exploratueur internet et de taper http://192.168.1.1 par exemple
Rappel : Regarde dans tes "favoris réseaux" dans ton explorateur de fichier : ton routeur a surement déjà été repéré par Windows (*) : suffit de double-cliquer dessus.
(*) selon les règles de sécurité de ton PC.
Il faudra faire le réglage de la règle NAT à la main.
--> Voir la doc de ton routeur
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 20131 28 mars 2009 à 23:49
bonsoir
j'essaie de créer une page perso simple sur mon FAI, j'ai donc créer une simple index.html!
je ne sais pas ou écrire ton code ? lorsque je renome ma page index.html en index.php j'ai le message suivant de mon FAI : "PHP n'est pas activé sur cet hébergement."
petit rappel que tu n'as pas du voir : je n'ai pas de routeur, j'ai un modem donc l'adresse directe. C'est pour ça que j'ai du mal à tester et que je voudrais que mon logiciel puisse passer outre cet inconvénient.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 29 mars 2009 à 04:11
Ok
Si ton hébergeur ne supporte pas PHP, il faudra donc t'en passer.
Ils disent 'pas activé' : regarde si tu peux l'activer ...
Je n'ai pas d'exemple en pur html, désolé.
Il te faut donc te rabattre sur www.whatismyip.com
Ok pour le routeur, je pensais que ...
Pour un modem, il est possible que LocalIP te fournisse ton ton adresse public (pas d'expérience)
Il te faut donc passer par DynDNS.org si tu veux que tes clients n'aient qu'à taper www.tonIdentifiant.dyndns.org pour arriver sur ta machine (avec le Updater qui fonctionne sur ta machine)
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 29 mars 2009 à 04:26
PS : Pense à déclarer ton EXE dans le parefeu.
Si tu as des questions concenrant le net et ses méandres, pense à aller faire un tour chez www.commentcamarche.net
cs_marco62118
Messages postés176Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention 1 avril 20131 29 mars 2009 à 15:35
ok merci pour toutes ces infos
je crois que je vais mettre dans mon prog une recherche d'adresse IP sur plusieur site comme myadresseIp dynsorgip ou autres et je vais essayer de faire mon propre site qui renverra l'adresse ip.