python - 指定使用多个套接字时从哪个套接字 IP 地址接收
问题描述
我正在使用套接字在多个设备之间进行通信,每个设备都有自己的 IP 地址(想想一个集线器到多个设备)。我希望集线器能够使用该设备的 IP 地址从特定设备的套接字接收。
我曾考虑过使用该recvfrom()
功能,但这仅在您已经从缓冲区读取后告诉您原始 IP。我希望能够事先指定这一点。
解决方案
使用connect()
. 尽管 UDP 在技术上是无连接的,但套接字 API 允许您以这种方式创建伪连接。调用connect()
UDP 套接字使其仅从指定的远程 IP 和端口接收。
这也允许您使用send()
而不是sendto()
与该套接字一起使用;它将自动使用连接的 IP 和端口作为目标。
请参阅连接 UDP 套接字以阅读有关此内容的更多详细信息。
推荐阅读
- azure - Azure ML 完成订阅后如何访问我的数据
- java - 如何为 openId(keyclock) 授权自定义 spring 安全性?
- laravel - spatie 在 null 上调用成员函数 contains()?
- swiftui - 如何在 SwiftUi 中更改弹出背景颜色和高度
- python - python open csv 搜索模式并删除其他所有内容
- swiftui - iOS 和 WatchOS 上的不同 .listStyle() 在可重用组件中?
- solr - Solr中复合词的优先级
- reactjs - Apollo onError forward(操作)不起作用
- java - 您可以在 properties/yml 文件中列出列表吗?
- ansible - Ansible - 循环变量