Python-socket.error:无法分配请求的地址

3 python sockets networking

我已经编写了一个聊天服务器,但是无法将套接字绑定到IP地址:

import sys
import os
import socket

HOST = "194.118.168.131"
SOCKET_LIST = []
RECV_BUFFER = 4096 
PORT = 9009

def chat_server():

    server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    server_socket.bind((HOST, PORT))
    server_socket.listen(10)
...
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Traceback (most recent call last):
  File "server.py", line 83, in <module>
    sys.exit(chat_server())
  File "server.py", line 20, in chat_server
    server_socket.bind((HOST, PORT))
  File "/usr/lib/python2.7/socket.py", line 224, in meth
    return getattr(self._sock,name)(*args)
socket.error: [Errno 99] Cannot assign requested address
Run Code Online (Sandbox Code Playgroud)

我的代码有什么问题?


我没有找到以下答案:

“连接中止。”,Python中的错误(99,“无法分配请求的地址”)错误
socket.error [Errno 99]无法分配请求的地址
绑定:无法分配请求的地址
无法分配请求的地址-可能的原因?

lll*_*lll 5

通过检查errno.h,errno 99是EADDRNOTAVAIL。手册页bind(2)说:

EADDRNOTAVAIL请求的接口不存在,或者请求的地址不是本地的。

这通常是由错误的IP地址引起的。您可以使用命令 ifconfig来检查您的计算机是否具有该IP地址。