双网卡连接不同局域网,如何向两个网卡(局域网)同时发送广播,并对两个网络中机器的回复进行应答?如果以上方案不好实现,能否查出本机上有几个网卡和它们的IP地址,起码可以让用户可以选择使用哪张网卡进行通讯?对双网卡机制和多网卡下使用SOCKET不是很了解,希望大家能帮帮忙,如果能说明下大概原理最好,非常感谢!
解决方案 »
- winform如何通过httpWebRequest给百度主页赋值并触发事件?
- 想做一个登陆软件 show() 和showdialog()的时候遇到了困难 请大家帮助 谢谢!
- 在线等:c# asp.net web水晶报表图表,ie可以看到,但是打印是红叉,怎么回事情?
- 日历控件的问题
- 加载报表失败!!!!还需要注意什么呀?????
- 急急,请问如何禁止win form下的点击datagrid列头时的排序?在线等
- VS 2012出现问题,求大神帮忙
- 字符拆分问题,请教!
- 怎样判断系统中已有同一程序的进程存在?
- C#中如何调用一个外部可执行文件,并获得其返回值呢?
- 超棘手问题...线程mscorwks.dll!ReleaseFusionInterface超耗CPU...
- 急!!MDAC版本的问题。
感谢你的回答,不过我说说我的理解,我查过MSDN里面的Socket.Bind 方法:
——————————————————————————————————————
如果您不介意分配哪个本地地址,则可以用 IPAddress.Any 作为地址参数创建一个 IPEndPoint,这样,基础服务提供程序将会分配最适合的网络地址。如果您有多个网络接口,这将有助于简化您的应用程序。
——————————————————————————————————————
就我的理解,使用IPAddress.Any 的话,应该是在多个网卡中分配一个发送,而不是两个网卡(局域网)同时发送,实际测试也没有成功,是否是我的设置有问题呢?TO:alldj(灵山妖姬)
感谢你的方案,不过我手头上的项目已经不可能做如此大的修改了,还是希望能找到一个服务器端就能解决的方案TO:jiangsheng(蒋晟.Net[MVP])
是采用多路广播吗?呵呵 我对这块不大了解,我先去看看资料 非常感谢
获取当前主机的所有IP地址,包括:127.0.0.1
我还以为楼主就不管了呢!其实你只要在Socket上绑定IPAddress.Any就可以向两个网络的任何一个网络广播。这样你就只要在一个Socket上对两个局域网分别广播一次,这样做的前提是两个局域网要在不同的IP段内。如:
网络A在192.168.0.X,网络B在192.168.1.X。
两次广播地址分别为:192.168.0.255,192.168.1.255。
这样应该可以的!