[译]Python - socket.error: Cannot assign requested address


问:

我写了一个聊天服务器,但是我不能够将socket绑定到一个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)
...


我得到以下错误


Traceback (most recent call last):
 File "server.py", line 83, in


我上面的代码有什么错误么?


答:


查看错误得知,errno 99 是 EADDRNOTAVAIL 帮助手册里面是这么说的:


EADDRNOTAVAIL 一个不存在的接口被请求了或者请求的地址不是本地的地址。

```

代码中提示是错误的IP地址。你可以尝试使用ifconfig看下本地的服务器是否有这个IP地址。