Python

[Python] WinError 10061 ConnectionRefusedError

ruming 2023. 2. 7. 07:36

파이썬에서 서버와 클라이언트를 구현하는 간단한 테스트를 공부 중인데 다음과 같은 오류가 떴다.

 

ConnectionRefusedError: [WinError 10061] 대상 컴퓨터에서 연결을 거부했으므로 연결하지 못했습니다

 

원인을 찾아보니 서버와 클라이언트를 실행할 때는 각각의 idle에서 실행해야 한다고 한다.

같은 idle에서 서버와 클라이언트를 실행할 경우 먼저 실행된 서버가 닫히기 때문이다.

이걸 모르고 한 idle에서 실행시켰더니 연결되지 않았다...

idle 창을 두 개 열어서 서버와 클라이언트를 실행시키니 접속이 잘 되었다.

 

[서버]

import socket

addr = ("0.0.0.0", 4444)

with socket.socket() as s:
    s.bind(addr)
    s.listen()
    print("server is started..")
    conn, addr = s.accept() 
    print("client = {}:{}".format(addr[0], addr[1])) #ip, port

    data = conn.recv(1024)
    conn.send(data)
    print(data.decode())

[클라이언트]

import socket

addr = ("127.0.0.1", 4444)
str1 = input("echo: ").encode()

with socket.socket() as s:
    s.connect(addr)
    s.send(str1)
    data = s.recv(1024)
    
print(data.decode())