免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 18333 | 回复: 12
打印 上一主题 下一主题

[C] 如何指定UDP包的源地址和源端口? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-05-19 11:15 |只看该作者 |倒序浏览
目前的需求:
比如已知一个IP:127.0.0.1, 端口号:1800.在不使用bind函数的情况下,当发送UDP包的时候,如何能让包中的源地址等于127.0.0,端口等于1800.

我查了很多setsockopt可以用的选项,好像没有找到合适的。


哪位达人愿意告知,多谢!

论坛徽章:
0
2 [报告]
发表于 2008-05-19 11:22 |只看该作者
   客户端在 sendto 的 时候, 不需要 bind() 呀,

论坛徽章:
0
3 [报告]
发表于 2008-05-19 11:30 |只看该作者

回复 #2 qingfengjianke 的帖子

嗯,但是如果不bind的话,sendto会指定一个可用的端口,而不是1800端口。

现在我想要,UDP包中的源IP地址和源端口是可以自己指定的,,但不能用bind这个系统调用的方法。

论坛徽章:
39
2017金鸡报晓
日期:2017-02-08 10:39:4219周年集字徽章-周
日期:2023-04-15 12:02:2715-16赛季CBA联赛之深圳
日期:2023-02-16 14:39:0220周年集字徽章-年
日期:2022-08-31 14:25:28黑曼巴
日期:2022-08-17 18:57:0919周年集字徽章-年
日期:2022-04-25 13:02:5920周年集字徽章-20	
日期:2022-03-29 11:10:4620周年集字徽章-年
日期:2022-03-14 22:35:1820周年集字徽章-周	
日期:2022-03-09 12:51:3220周年集字徽章-年
日期:2022-02-10 13:13:4420周年集字徽章-周	
日期:2022-02-03 12:09:4420周年集字徽章-20	
日期:2022-01-25 20:14:27
4 [报告]
发表于 2008-05-19 11:38 |只看该作者
楼主想干黑活

论坛徽章:
0
5 [报告]
发表于 2008-05-19 11:56 |只看该作者
原帖由 醉卧水云间 于 2008-5-19 11:38 发表
楼主想干黑活



:wink:   客户端在sendto后,不想让服务器得到自己指定的客户端ip 和端口

貌似和套接字 有关,

但是 如果客户端 不 bind(), 在sendto 后,系统会自动分配一个端口的. ,貌似没法指定一个端口,

[ 本帖最后由 qingfengjianke 于 2008-5-19 12:04 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2008-05-19 12:36 |只看该作者
这样的要求的,发送原始包可以做到,可以试试

论坛徽章:
0
7 [报告]
发表于 2008-05-19 15:44 |只看该作者
原帖由 drog1983 于 2008-5-19 12:36 发表
这样的要求的,发送原始包可以做到,可以试试



这个要ROOT用户才可以发送原始包。
就没有简单一点的办法?

[ 本帖最后由 scutlzp 于 2008-5-19 15:48 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2008-05-20 15:08 |只看该作者
为什么不用bind()啊?

论坛徽章:
0
9 [报告]
发表于 2008-05-20 16:40 |只看该作者
原帖由 lanying_wzw 于 2008-5-20 15:08 发表
为什么不用bind()啊?


对呀,为啥不用bind呀??不用bind,操作系统就自动分配端口。

论坛徽章:
0
10 [报告]
发表于 2010-09-01 10:57 |只看该作者
回复 9# lanying_wzw


    客户端可以?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP