Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
一台机器有两个以太网端口,并使用它们连接到网络(用于冗余)。另一台机器周期性地在整个网络上发送 UDP 广播。
我需要检测我通过哪个以太网端口接收到广播。我需要知道这一点,因为如果一个以太网端口(线路)发生故障,我需要标记无效端口。
目前我正在使用 recvfrom() 套接字函数接收 UDP 广播,但我不知道如何判断实际接收到的 UDP 数据包是通过哪个以太网端口。
我从来没有在纯 C 语言中这样做过,但是您应该能够在调用 recvfrom 之前将您的套接字绑定到特定的适配器,因此您将在这里有两个 UDP 侦听器 - 每个适配器一个。