【问题标题】:Selecting an interface when multicasting on windows在 windows 上多播时选择接口
【发布时间】:2013-06-12 11:09:26
【问题描述】:

我想通过特定的网络接口发送数据

udpSocket->joinMulticastGroup(QHostAddress(Address),
                              QNetworkInterface::interfaceFromName(iface));

但是,数据正在通过另一个网络接口发送。如何强制它通过该接口发送数据?

已通过 SmartSniff 测试。

【问题讨论】:

标签: c++ qt multicast


【解决方案1】:

加入多播组是为了接收。

如果您希望您的 send() 调用在特定界面上进行,您需要 bind() 到它。

【讨论】:

  • 如何将我的套接字绑定到一个特定的接口并强制我的数据包从它发出?我的问题是发送
  • 正如我所说,使用bind() 方法。
  • 我有点困惑。你能给我举个例子吗? 我正在尝试发送数据,但我不明白bind() 将如何帮助我强制程序通过特定接口路由数据。
  • 你想绑定到特定的接口,所以调用bind()。没有什么令人困惑的。绑定到特定 IP 地址将强制通过该套接字的所有发送都通过具有该 IP 地址的接口发送。
  • 投反对票,因为 bind() 仅适用于 Windows 下的接收。
猜你喜欢
  • 1970-01-01
  • 2011-04-21
  • 2018-09-05
  • 1970-01-01
  • 2012-09-22
  • 1970-01-01
  • 2011-09-05
  • 2021-07-02
  • 1970-01-01
相关资源
最近更新 更多