본문으로 바로가기

socket은 소켓을 닫은 후 바로 재사용할 수 없도록 TIME_WAIT라는 상태를 가진다.

setsockopt 함수를 사용하여 socket의 옵션을 변경할 수 있는데 SO_REUSEADDR 옵션을 1로 변경하면 기존 TIME_WAIT 상태를 버리고 새로운 소켓 요청을 할당할 수 있다.

sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

이제 1초에 1번씩 소켓을 재사용해도 에러가 발생되지 않는다.