打印

请教一个多网卡Server/Client网络编程的问题

[复制链接]
2280|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xincun777|  楼主 | 2007-12-3 14:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
个位大侠,请教一个关于客户端/服务器端网络编程的问题,情景如下:

(1)我的板子上面有2个网卡,分别是eth0 和 eth1(它们可能不在同一个网段);板子总是做客户端

(2)服务器端一个公网IP
(3)我想将数据通过 eth0 或者 eth1均能送到 公网服务器端

(4)请问:我在编写Client端程序的时候,如何保证:是通过eth0 连接到服务器的呢  还是  通过eth1连接到服务器的呢?

(5)谢谢个位

相关帖子

沙发
sufeng983| | 2007-12-3 17:28 | 只看该作者

新人抛砖

    2个网卡芯片,(如rtl8019)当然有各自的地址范围了。查询他们是否有数据的地址是不一样的,要从2个芯片中读写数据地址也不一样的,那取出来就可以按照不一样的路径处理,如果是在嵌入试网络上的应用,修改或者配置(有的协议栈支持双口通信)基本上就可以分出2条路径来处理

使用特权

评论回复
板凳
xincun777|  楼主 | 2007-12-3 18:04 | 只看该作者

谢谢回答,Linux2.6上暂时没有这样的配置项



目前TCP/IP协议栈已经很完备了,不需要对指定的物理地址访问哈(要是这样的话,我也就根本不需要协议栈了,而且数据重连等问题实现起来也很复杂的;干吗不用稳定的协议栈呢)

使用特权

评论回复
地板
infree| | 2007-12-6 14:51 | 只看该作者

问题不是很明白

大概是两个网口都要可以接第三个网口的意思吗?这样的话你可能会需要分别打开两个网卡设备,尝试和服务器进行连接,哪个连上了就用哪个网卡吧。中间如果连接断了,可以再尝试两个。

使用特权

评论回复
5
netboy_feng| | 2007-12-11 11:44 | 只看该作者

不是很明白最后的问题?

首先双网口不能在同一网段,除非是同一IP做绑定。
如何判定那个网口?既然板子做客户端,如果像备份形势,就将要上送的数据往两个网口都发送一次吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

48

主题

105

帖子

1

粉丝