1、多个组播 和广播绑定同一个端口 ,bind 的时候有一个会失败 ,
2、说是要用SO_ADDRREUSE 具体怎么用呢,
3、或者其他方法?
非常感谢!!!
在线等!!!
2、说是要用SO_ADDRREUSE 具体怎么用呢,
3、或者其他方法?
非常感谢!!!
在线等!!!
解决方案 »
- 急求:一个简单计算器的设计(用VC++,要实现可视化效果)!!
- 关于拆分窗口的问题!希望高手帮帮小弟啊!谢谢了!真的很急,希望大家来看看啊!
- 为啥get_body()后hr=S_OK可是指针却是NULL ?
- CString使用问题!(高手进)
- 谁能给我一个对话框中图形打印的例子?多谢!
- 问一个关于Xtreme Toolkit的问题?
- Modem之间的通讯问题!急!真急!都要急死了!500分源码!
- 关于截图、剪切板的程序(MFC)
- 20分请大侠看看:无法安装vc: 运行setup, 再点下步,就报错了!详见内!
- 关于非模式属性页的问题
- 最小二乘拟合求解多元一次方程组
- vc6中如何设置编译时,按unicode进行编译?
BOOL reuseaddr=TRUE;
setsockopt(s,SOL_SOCKET,SO_REUSEADDR,(const char*)&reuseaddr,sizeof(BOOL));bind(...)不过一般最好不要这么用,尤其你这种情况
不可能收不到吧,应该所有数据都到这个端口会发生混乱所以说你这种用法本身就有问题一般重用端口是防止程序突然退出而系统没有释放端口,引起程序重启bind失败设置的
(摘自《Unix网络编程》卷一,即UNPv1)
1、当有一个有相同本地地址和端口的socket1处于TIME_WAIT状态时,而你启
动的程序的socket2要占用该地址和端口,你的程序就要用到该选项。
2、SO_REUSEADDR允许同一port上启动同一服务器的多个实例(多个进程)。但
每个实例绑定的IP地址是不能相同的。在有多块网卡或用IP Alias技术的机器可
以测试这种情况。
3、SO_REUSEADDR允许单个进程绑定相同的端口到多个socket上,但每个soc
ket绑定的ip地址不同。这和2很相似,区别请看UNPv1。
4、SO_REUSEADDR允许完全相同的地址和端口的重复绑定。但这只用于UDP的
多播,不用于TCP。http://hi.baidu.com/kopccl/blog/item/7d89f08bbd001c11c8fc7ac9.html