Bonjour, je suis incapable de communiquer avec 2 ordinateurs avec mon server et mon client en local mais quand je suis sur le même pc la communication se fait avec succès.Alors comment faire pour communiquer avec 2 pc différents.Les pc sont sur windows et j'utilise python3.6.Voici les programmes :
#serveur
import socket
import sys
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host,port = ('',40000)
s.bind((host,port))
print(f'[+]En attente d\'une connexion au port {port}')
s.listen(5)
co = s.accept()
while(True):
msg = input('>')
co[0].send(msg.encode('utf-8'))
data = co[0].recv(1024).decode('utf-8','ignore')
print(data)
#client
import socket
import sys
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host,port = ('localhost',40000)
s.connect((host,port))
while(True):
data = s.recv(1024).decode("utf-8")
print(data)
s.sendall(b'ok')
Ton client essaye de se connecter au localhost, soit à la machine sur laquelle il est exécuté. Remplace localhost par l'adresse IP (sans doute locale) de ton autre machine.
- Edité par BunshinKage 11 juillet 2019 à 20:31:46
Ton client essaye de se connecter au localhost, soit à la machine sur laquelle il est exécuté. Remplace localhost par l'adresse IP (sans doute locale) de ton autre machine.
- Edité par BunshinKage il y a environ 4 heures
J'ai déja éssayé et ça n'a pas marché.As-tu d'autres solution?
Je n'ai pas eu de problèmes en testant ton code sur deux machines différentes en indiquant l'adresse IP de mon serveur à la place de localhost. Es-tu sûr d'avoir rentré la bonne adresse ? Es-tu capable, depuis ton client de faire un ping à destination de ton serveur ?
Je n'ai pas eu de problèmes en testant ton code sur deux machines différentes en indiquant l'adresse IP de mon serveur à la place de localhost. Es-tu sûr d'avoir rentré la bonne adresse ? Es-tu capable, depuis ton client de faire un ping à destination de ton serveur ?
Oui, je suis sur d'avoir la bonne address et oui je peux faire un ping a mon serveur.
Salut, cette erreur indiques que le port auquel tu essaies de te connecter est fermé. Plusieurs possibilités : soit tu as lancé le client avant le serveur, soit tu t'es trompé dans l'adresse ou le port. Peut être aussi que tu as un parfeu qui bloque les connexions.
Salut, cette erreur indiques que le port auquel tu essaies de te connecter est fermé. Plusieurs possibilités : soit tu as lancé le client avant le serveur, soit tu t'es trompé dans l'adresse ou le port. Peut être aussi que tu as un parfeu qui bloque les connexions.
Sous Windows, tu dois pouvoir désactiver le pare-feu en désactivant Windows Defender. C'est un peu brutal, mais ça permettra déjà de voir si le problème vient de là.
Sous Windows, tu dois pouvoir désactiver le pare-feu en désactivant Windows Defender. C'est un peu brutal, mais ça permettra déjà de voir si le problème vient de là.
Sa a rien changer a mon probleme, je crois que c'est mort!
Tu as mis quoi comme adresse IP pour la connexion ? Parce que si tu es en local, il faut utiliser les adresses locales (souvent en 192.168...) et pas l'adresse IP publique (pas celle qu'on trouve sur des sites type mon-ip.com).
Tu as mis quoi comme adresse IP pour la connexion ? Parce que si tu es en local, il faut utiliser les adresses locales (souvent en 192.168...) et pas l'adresse IP publique (pas celle qu'on trouve sur des sites type mon-ip.com).
Blond, bouclé, toujours le sourire aux lèvres...