鱼C论坛

 找回密码
 立即注册
查看: 1619|回复: 1

Python:Ubuntu虚拟机向Windows主机以UDP协议发送数据,主机接收不到

[复制链接]
发表于 2021-7-24 20:25:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请大佬指点迷津:
        我在测试Ubuntu虚拟机向Windows主机以UDP协议发送数据,同时在Windows端打开了 网络调试助手 ,却怎么也无法接收到来自虚拟机的信息。
        后来我在虚拟机上也安装了 网络调试助手 并向虚拟机自身发送数据,这些数据却能被准确的捕获,这是为什么?是网络问题吗?
        javascript:;
以下是发送代码,注意是Python代码
该代码的ip地址是虚拟机自身的IP地址
  1. """
  2. 1.倒入模块
  3. 2.创建套接字
  4. 3.发送数据
  5. 4.接收数据(二进制)
  6. 5.解码数据,得到字符串
  7. 6.输出接受的内容
  8. 7.关闭套接字
  9. """

  10. # 1.倒入模块
  11. import socket
  12. # 2.创建套接字
  13. udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  14. # 3.发送数据
  15. udp_socket.sendto("约吗?".encode(), ("192.168.0.105", 8080))
  16. # 4.接收数据(二进制)
  17. # recvfrom(1024) 作用:
  18. # 从套接字中接受1024个字节的数据
  19. recv_data = udp_socket.recvfrom(1024)
  20. # recv_data[0] 接收到的数据二进制格式
  21. # recv_data[1] 对方的ip和端口
  22. print(recv_data[0])
  23. # 5.解码数据,得到字符串
  24. recv_text = recv_data[0].decode("UTF-8")
  25. # 6.输出接受的内容
  26. print("来自:", recv_data[1], "的消息:", recv_text)
  27. # 7.关闭套接字
  28. udp_socket.close()
复制代码

javascript:;

网络调试助手界面

网络调试助手界面

虚拟机本机发送数据给自己

虚拟机本机发送数据给自己
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-24 20:34:24 | 显示全部楼层
windows上用wireshark抓包看看有没有收到ubuntu发了的包
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-27 21:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表