【问题标题】:Receiving UDP broadcasts on machine with two Etherent ports在具有两个以太网端口的机器上接收 UDP 广播
【发布时间】:2013-07-17 20:02:50
【问题描述】:

一台机器有两个以太网端口,并使用这两个端口连接到网络(为了冗余)。另一台机器周期性地在整个网络上发送 UDP 广播。

我需要检测我通过哪个以太网端口接收到广播。我需要知道这一点,因为如果一个以太网端口(线路)发生故障,我需要标记无效端口。

目前我正在使用 recvfrom() 套接字函数来接收 UDP 广播,但我不知道如何判断实际接收到的 UDP 数据包是通过哪个以太网端口。

【问题讨论】:

标签: c sockets


【解决方案1】:

我从来没有在纯 C 语言中这样做过,但是您应该能够在调用 recvfrom 之前将您的套接字绑定到特定的适配器,因此您将在这里有两个 UDP 侦听器 - 每个适配器一个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    • 1970-01-01
    • 2018-03-25
    • 2012-02-26
    • 1970-01-01
    • 2015-04-03
    相关资源
    最近更新 更多