ERROR: [Errno 99] Cannot assign requested address
时间: 2023-12-23 17:25:20 浏览: 51
[Errno 99] Cannot assign requested address错误通常是由于没有多余的端口可供分配而导致的。可以通过以下步骤来解决这个问题:
1. 执行命令cat /proc/sys/net/ipv4/ip_local_port_range,查看可分配的端口范围。
2. 将可分配的端口范围减少一些,例如执行命令echo 32768 32769 > /proc/sys/net/ipv4/ip_local_port_range。
3. 重新启动应用程序,这样就可以避免[Errno 99] Cannot assign requested address错误了。
相关问题
socket.error: [Errno 99] Cannot assign requested address
socket.error: [Errno 99] Cannot assign requested address是一个错误提示,表示无法将所请求的地址分配给socket。这个问题通常发生在使用socket.bind()函数时,其中指定的本地IP地址无效或不可分配。
在给定的引用中,错误可能是由以下代码导致的:
```python
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
local_ip = socket.gethostbyname(socket.gethostname())
sock.bind((local_ip, mcast_group_port))
```
在这里,local_ip是通过socket.gethostbyname(socket.gethostname())函数获取的本地IP地址。然而,这种方法有时会导致获取到一个无效或不可分配的IP地址,因此在绑定时就会出现Cannot assign requested address错误。
要解决这个问题,有几个可能的解决办法:
1. 确保获取到的本地IP地址是有效和可分配的。你可以尝试使用其他方法获取本地IP地址,例如使用socket.gethostbyname_ex(socket.gethostname())。
2. 显式指定一个有效的本地IP地址,而不是依赖于获取到的IP地址。你可以直接指定一个已知的可用IP地址。
3. 检查系统中是否存在网络配置问题或其他网络相关的问题。你可以尝试重启网络设备或重新配置网络设置。
服务器OSError: [Errno 99] Cannot assign requested address
这个错误通常是由于服务器无法分配所请求的地址导致的。有两种解决办法可以避免这个错误。
方法一是检查服务器的网络配置,确保服务器的IP地址和端口号是正确的,并且没有被其他程序占用。如果有其他程序正在使用相同的IP地址和端口号,你可以尝试更改服务器的IP地址和端口号,或者停止其他程序的运行。
方法二是在代码中添加异常处理机制,当出现OSError: \[Errno 99\] Cannot assign requested address错误时,程序会继续尝试连接服务器。你可以使用以下代码片段作为参考:
```python
while True:
try:
tcpOrder_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcpOrder_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
locall_addr = ("", 7890)
tcpOrder_socket.bind(locall_addr)
tcpOrder_socket.connect((server_ip, int(server_port)))
choice_num = input("请输入操作代码:")
except Exception as link_fault:
continue
```
这样,当出现OSError: \[Errno 99\] Cannot assign requested address错误时,程序会继续尝试连接服务器,直到成功为止。请注意,这种方法只是暂时解决了错误,而不是解决了根本原因。如果你能找到导致这个错误的具体原因,最好还是修复它。引用\[1\] 引用\[2\] 引用\[3\]
#### 引用[.reference_title]
- *1* *2* *3* [Python OSError: [Errno 99] Cannot assign requested address错误的解决](https://blog.csdn.net/weixin_40612082/article/details/80032613)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)