현재 동일한 컴퓨터에서 클라이언트와 서버를 모두 사용할 때 올바르게 작동하는 기본 LAN 소켓 서버를 만들려고합니다. . 두 대의 컴퓨터 (Mac 및 Windows)에서 클라이언트와 서버를 사용하려고하면 클라이언트 측에서 일관되게 연결이 거부됩니다. 여기에 내가 내 Mac에있어 오류가 내 창문에Python 2.7.3을 사용하여 오류 61 (Mac) 및 오류 10061 (Windows)을 수정하는 방법
Traceback (most recent call last):
File "/Users/*****/Desktop/Client V2.py", line 31, in <module>
s.connect((host, port))
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py",
line 224, in meth
return getattr(self._sock,name)(*args)
error: [Errno 61] Connection refused
저도 같은 오류를했다가, 단지 수는 달랐다. 들어오는 연결과 나가는 연결 모두에 대해 Windows 방화벽을 해제했으며 실제 문제가 무엇인지 혼란 스럽습니다.
try:
remote_ip = socket.gethostbyname(host)
except socket.gaierror:
#could not resolve
print "Hostname could not be resolved. Exiting"
sys.exit()
:
클라이언트
#Get host and port info to connect
host = 'localhost'
port = input ("What is the PORT number?")
나는이 라인 아마도 그들은 문제의 근본 원인이며, 필요한 경우 확실하지 않다 : 여기 내 포트했다 코드입니다
마지막으로 연결하는 실제 코드입니다. ((호스트, 포트))
서버 s.connect (I 소켓 s
라고 함)
HOST = 'localhost' #Symbolic name meaning all available interfaces
PORT = input ("Enter the PORT number (1 - 10,000)")
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print "Socket Created"
try:
s.bind((HOST, PORT))
except socket.error, msg:
print "Bind failed. Error Code : " + str(msg[0]) + " Message " + str(msg[1])
sys.exit()
print "Socket Bind Complete"
s.listen(10)
print "Socket now listening"
내가 정말 바보 같은 짓을했다고 확신하지만, 누군가가 나에게 알려 주시기 바랍니다 수있는 내 실수는 (또는 이것이 가능한 cross-os 인 경우). 이미 here을 게시했지만 아무도 응답하지 않았습니다. 거기에 몇 가지 다른 질문이 있습니다. 누군가 대답을 시도 할 수 있다면 좋을 것입니다.
로컬 호스트가 서로 다른 두 대의 컴퓨터에서 작동하는 이유는 무엇입니까? –