当前位置:  技术问答>linux和unix

socket 多网卡如何获知是哪张网卡接收的数据?

    来源: 互联网  发布时间:2017-05-26

    本文导语:  一台设备装了有线和无线两张网卡。可以同网段,也可以不同。 绑定的时候选择了 INADDR_ANY。 现在希望根据进入的网卡不同而回复不同的内容,请问如何做? 网上看到的方法有两张网卡分别bind。但是这样ip一改变...

一台设备装了有线和无线两张网卡。可以同网段,也可以不同。

绑定的时候选择了 INADDR_ANY。
现在希望根据进入的网卡不同而回复不同的内容,请问如何做?

网上看到的方法有两张网卡分别bind。但是这样ip一改变就要重新启动程序重新bind,比较麻烦。

|
Let me guess

getsockname first

http://pubs.opengroup.org/onlinepubs/9699919799/functions/getsockname.html

Then here

http://stackoverflow.com/questions/6052377/how-to-get-mac-address-of-your-machine-using-a-c-program


I am not a network expert. But, if ips have been changed, you will have to restart the network first. Then your socket may not survive that anyway. So, your effort could be a waste.

|
《UNIX网络编程 》卷1,第95页:在一个以通配IP地址调用bind的TCP服务器上,与某个客户的连接一旦建立(accept成功返回),getsockname就可以用于返回由内核赋予该连接的本地IP地址。所以正解是getsockname

|
大神们,帮忙解决一下呗!

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • socket发送端、接收端同一机器,kill掉接收端进程,发送端也被kill?
  • 从多个socket接收数据
  • socket 接收数据问题
  • socket 接收缓冲区大小如何查看?
  • getsockopt每次得到的socket的接收发送缓冲怎么都不一样
  • Linux下怎么用socket接收zip文件流?怎么把zip文件读成流?
  • socket接收字节数组不成功,请大侠指点迷津
  • 关于socket下的发送和接收缓冲区的问题
  • 多线程socket程序莫名其妙接收到SIGALRM信号问题。
  • 编程技术其它 iis7站长之家
  • UNIX下SOCKET怎么能象WINDOWS下用通信事件来响应接收数据呢?
  • 请教关于socket通讯中客户端接收服务端信息的问题
  • socket接收二进制数据流的问题!!(在线等待)
  • 求教:设置socket接收缓存区大小失败?
  • Linux下怎么用read或recv函数完全接收socket发来的数据?
  • java 与c++用socket通讯的问题??字符串不能接收到??急啊!
  • 客户端是linux通过socket编程实现服务器端win平台接收?
  • 我做了个socket服务器,但是客户端接收数据的时候用select()函数????可接受不到
  • linux下的socket接收数据的难题!
  • 怎么能接收通过socket传来的中文数据呢?我如果用BufferReader的话socket连接就无效了
  • java命名空间java.net类socket的类成员方法: socket定义及介绍
  • re socket编程中 ACCEPT返回的socket与原socket(他参数中的)端口号一样吗?
  • java命名空间java.nio.channels类socketchannel的类成员方法: socket定义及介绍
  • libevent2需要从socket读一段数据写入一个socket中,同时发送给另一个socket
  • java命名空间java.nio.channels类serversocketchannel的类成员方法: socket定义及介绍
  • socket 通讯开发包 Simple Sockets
  • java命名空间java.nio.channels类datagramchannel的类成员方法: socket定义及介绍
  • C++ Socket 库 C++ Sockets
  • java命名空间java.net类socket的类成员方法: getsendbuffersize定义及介绍
  • vc做的的socket应用和unix下socket?
  • java命名空间java.net类socket的类成员方法: getreceivebuffersize定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3