使用udp socket时,如何设置udp的源端口?

tuman 2004-05-06 03:11:41
直接创建一个新的socket时,发送数据使用的系统分配的端口,我想指定源端口,怎么弄呢?多谢
...全文
649 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
COM_MOC 2004-05-07
又不绑定,那应该是最后的招了,:D
  • 打赏
  • 举报
回复
tuman 2004-05-07
如果不绑定,是不是只能用raw socket哪?
  • 打赏
  • 举报
回复
fzel_net 2004-05-07
//port 就是你要绑定的端口号了
void CreatSocket(unsigned int ip, int port){
int fd;
struct sockaddr_in addr;
if(fd=socket(PF_INET,SOCK_DGRAM,IPPROTO_UDP)<0){
printf("creat socket failed\n");
}
memset(&addr, 0, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(port);
addr.sin_addr.s_addr = ip;
if (bind(fd, (struct sockaddr *)&addr, sizeof(struct sockaddr)) == -1) {
close(fd);
return -1;
}

  • 打赏
  • 举报
回复
wangle11111 2004-05-07
使用原始套接字IPPROTO_UDP ,然后用设置IP_HDRNCAL选项,,就可以自己定义一个UDP包头了
  • 打赏
  • 举报
回复
lsof 2004-05-06
bind到某个本地端口

  • 打赏
  • 举报
回复
醉马不肖 2004-05-06
bind
  • 打赏
  • 举报
回复
相关推荐
发帖
通信技术
加入

4238

社区成员

通信技术相关讨论
社区管理员
  • 网络通信
申请成为版主
帖子事件
创建了帖子
2004-05-06 03:11
社区公告
暂无公告