[IP ?][Socket] Serveur/Client sur Internet.
Bonjour !
J'ai appris il y a pas tres longtemps a utiliser les sockets... Mais un problème persiste:
Je n'arrive pas a joindre deux PC sur le WEB... Déjà qu'en local c'est bancal...
Pour le Local, voila ce que je fait (Strict Minimum, juste pour la démarche...):
Serveur:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
from socket import *
HOST = "192.168.1.11"
PORT = 5000
Socket = socket(AF_INET, SOCK_STREAM)
Socket.bind((HOST, PORT))
Socket.listen(5) # A quoi correspond la valeure 5 exactement ?
print "En attente de connection..."
Connexion, Adresse = Socket.accept()
print "Ok\n"
MsgC = Connexion.recv(1024)
while 1:
print "C>", MsgC
if MsgC == "fin":
break
MsgC = Connexion.recv(1024)
Connexion.close()
raw_input("Fin") |
Client:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
from socket import *
HOST = "192.168.1.11"
PORT = 5000
Socket = socket(AF_INET, SOCK_STREAM)
print "Connection..."
Socket.connect((HOST, PORT))
print "Ok\n"
while 1:
MsgToS = raw_input("S< ")
Socket.send(MsgToS.encode()) # Le ".encode()" est useless ?
if MsgToS == "fin":
break
Socket.close()
raw_input("Fin") |
Testé et fonctionnel (Sur un seul ordinateur... Mais un précédant test m'a prouvé qu'il marchait sur deux ordis en réseau local...)
La question est: Comment dois-je m'y prendre pour passer par Internet ? Quel Ip dois-je rentrer ? Comment est-ce que je peux la connaitre ?