当前位置:网站首页 > Python编程 > 正文

python目标计算机积极拒绝(python socket目标计算机积极拒绝)



在python中实现tcp/ip通信可以利用内置的socket模块,它提供了标准的BSD Sockets API。socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一的标识网络通讯中的一个进程,“IP地址+TCP或UDP端口号”就为socket。

为了建立通信我们要实现服务器端(Server)和客户端(Client)程序,由于在我的同一台电脑上运行,故两个程序的ip地址设置相同。代码如下:

Server端代码:

Client端代码:

但是我在运行Client端程序时,有时会遇到如下的报错:

ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。

这说明服务器已经找到,但连接被服务器拒绝。于是我查了一下,连接失败原因可能有三点:

1.数据包被服务器端的防火墙过滤掉;

2.端口号设置错误;

3.服务器没有处于监听状态,被占用不等于在被监听。

通过检查发现端口号是一致的,排除原因一;通过检查防火墙设置和利用cmd指令:ping 192.168.0.7,能正常收到如下回复,排除原因二;

python 由于目标计算机积极拒绝 python socket由于目标计算机积极_服务器

并且我发现当server端程序运行时,程序就能正常运行,运行结果如下:

python 由于目标计算机积极拒绝 python socket由于目标计算机积极_socket_02

于是确定是原因三,由于端口未被监听,造成client.connect()函数连接失败返回异常,最终程序异常退出。

可以利用python中的try/except语句来处理异常做出改进,当程序运行try下面的client.connect()语句遇到异常后,会进入except异常处理块中执行输出”Connection failed.”,改进后的代码如下:

这样,问题就解决了。当遇到server端未启动监听时,程序也不会异常退出,运行结果如下:

python 由于目标计算机积极拒绝 python socket由于目标计算机积极_IP_03

到此这篇python目标计算机积极拒绝(python socket目标计算机积极拒绝)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • Python函数调用(python函数调用做九九乘法表)2025-02-07 08:18:10
  • st7735s中文(st7735s中文资料基于micropython)2025-02-07 08:18:10
  • ubuntu源码安装python(ubuntu20.04安装python)2025-02-07 08:18:10
  • python函数的定义方法(python中函数定义)2025-02-07 08:18:10
  • py创建文件夹(python建立py文件夹过程)2025-02-07 08:18:10
  • 凯撒密码加密算法python(凯撒密码加密算法python输入abc123输出def123)2025-02-07 08:18:10
  • 服务器部署python(服务器部署pytorch模型并想歪开放接口)2025-02-07 08:18:10
  • python解析pcap文件(python解析protobuf)2025-02-07 08:18:10
  • python函数有几种类型(python里的函数有哪些)2025-02-07 08:18:10
  • pymysql占位符用法(python占位符用法)2025-02-07 08:18:10
  • 全屏图片