Salut,
(Tu as inversé le code du client et celui du serveur dans ton exemple, et tu as un mySocket
au lieu de my_socket
qui traîne dans le code client.)
Là, tu as un serveur qui se branche sur le port 6678 du "localhost"
, autrement dit lui-même, et un client qui se branche sur le port 5001 du "localhost"
, autrement dit lui-même. Ça ne peut pas marcher, le client et le serveur se parlent juste à eux-même mais pas entre eux. Si le client et le serveur étaient la même machine, ça ne marcherait pas non plus parce qu’ils ne sont pas branchés sur le même port.
Dans un premier temps, essaie déjà avec le client et le serveur sur la même machine. Si tes deux scripts se branchent sur le même port, ça devrait marcher. Si déjà tu as du mal avec cette étape, dis nous parce que si ça marche déjà pas en local, ça marchera pas en réseau.
Ensuite, pour faire communiquer deux machines différentes sur le réseau local, tu peux avoir le serveur qui se branche sur my_socket.bind(("", 6678))
(pour accepter n’importe qui du réseau local), et le client doit se brancher sur le port 6678 du serveur. Par exemple my_socket.connect(("192.168.1.5", 6678))
, en remplaçant 192.168.1.5
par l’IP locale du serveur. Pour connaitre l’IP locale du serveur, tu peux par exemple utiliser la commande ip addr
sur le serveur, ou aller voir dans ton serveur DHCP (typiquement dans l’interface d’admin de ton routeur) qui va lister les machines présentes sur le réseau et leur IP(s) locale(s).