当前位置: 技术问答>linux和unix
linux下多网卡机器中,如何通过指定网卡来接受数据?
来源: 互联网 发布时间:2016-06-26
本文导语: 由于开发的系统需要在指定网卡上收发数据,小弟写了发送端和接收端测试程序,其中发送端已经可以通过指定网卡来发送数据,但在接收端用指定网卡接受数据却接收不到,why? 请问下,如何才能实现指定网卡的...
由于开发的系统需要在指定网卡上收发数据,小弟写了发送端和接收端测试程序,其中发送端已经可以通过指定网卡来发送数据,但在接收端用指定网卡接受数据却接收不到,why?
请问下,如何才能实现指定网卡的接收?
请问下,如何才能实现指定网卡的接收?
|
in_addr interface;
interface.s_addr = inet_addr("192.168.0.100");
setsockopt(sock, IPPROTO_IP, IP_MULTICAST_IF, reinterpret_cast(&interface), sizeof(interface))
interface.s_addr = inet_addr("192.168.0.100");
setsockopt(sock, IPPROTO_IP, IP_MULTICAST_IF, reinterpret_cast(&interface), sizeof(interface))
|
可以根据ip来区分,选择接收的ip,自然就对应不同的网卡。
|
用iptable指定一下吧
内核 中有个bug,我以前曾fix过。
我看现在官方的内核中还有这个bug,没有修改,不过iptables流程没有问题。
内核 中有个bug,我以前曾fix过。
我看现在官方的内核中还有这个bug,没有修改,不过iptables流程没有问题。
|
不好意思,楼主,我最近也要写一个指定网卡发包的程序,我机器上有两个网卡,现在想指定一个网卡向外发数据包,最近一点头绪都没有,楼主能不能把代码发一下看看。谢楼主。邮箱chang4979@yahoo.cn