栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在连接客户端代码之前进行绑定

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在连接客户端代码之前进行绑定

您不需要

bind(2)
这个。

您要在此处执行的操作是使用与套接字不同的 网络接口
。要使用系统默认设置以外的网络接口,您需要将

SO_BINDTODEVICE
socket选项与一起使用
setsockopt
"eth1"
例如,您要使用的接口应在要传递给
ifr_name
ifreq
struct字段中指定为字符串
setsockopt
。为此,您需要包括
<net/if.h>
标题。

基本上,类似以下(未经测试)的代码:

int set_interface(int socket_fd, const char* interface_name){    ifreq interface;    memset(&interface, 0, sizeof(interface));    strncpy(interface.ifr_name, interface_name, IFNAMSIZ);    int res = setsockopt(socket_fd, SOL_SOCKET, SO_BINDTODEVICE, &ifreq, sizeof(ifreq));    return res;}

另外,请确保检查返回码,以防

setsockopt
失败。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/393044.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号