CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  网络编程

SOCK_RAW与IPPORT_UDP使用的问题!

楼主windcsn(向所有的朋友学习!)2004-12-01 12:35:59 在 VC/MFC / 网络编程 提问

小弟在写一个traceroute程序,使用了sock_raw,建立的是UDP协议socket,设置IP和UDP头部内容,但我可以把数据发送出去,但返回的是ICMP报文,我用原来的sock接收不到,不知道用什么别的办法? 问题点数:100、回复次数:6Top

1 楼blastzgd(悟道)回复于 2004-12-01 13:07:10 得分 50

楼主:  
  你需要另建一个SOCK_RAW的套接字,协议使用IPPROTO_ICMP.用来接收路由器返回的超时ICMP消息.  
  另外:你的UDP套接字可以使用普通的SOCK_DGRAM,用不着使用SOCK_RAW.Top

2 楼kingzai(stevenzhu)回复于 2004-12-01 14:01:07 得分 5

http://www.codeguru.com/forum/showthread.php?t=318349Top

3 楼windcsn(向所有的朋友学习!)回复于 2004-12-01 16:32:49 得分 0

blastzgd(边城浪子):  
  你说,接收的时候使用另外一个套节字?那么能收到数据吗?  
  还有,使用SOCK_DGRAM的时候可以设置IP的TTL和本地端口吗?Top

4 楼windcsn(向所有的朋友学习!)回复于 2004-12-02 09:01:28 得分 0

大虾们,给点帮助啊!Top

5 楼jia20003(『gloomy fish』兄弟们一个一个结婚刺激我想跳楼!)回复于 2004-12-02 11:20:17 得分 45

你需要另建一个SOCK_RAW的套接字,协议使用IPPROTO_ICMP.用来接收路由器返回的超时ICMP消息.  
  可以发送icmp消息的~Top

6 楼windcsn(向所有的朋友学习!)回复于 2004-12-02 12:38:50 得分 0

其实现在我想明白了,知道怎么做了  
  实际上使用ICMP/UDP/TCP都可以实现tracert程序  
  谢谢各位Top

相关问题

  • RAW SOCK问题??
  • Win98支持SOCK_RAW吗?
  • 我的sock = (int)socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP)怎么return -1
  • SOCK_RAW 可以在window98下用吗?
  • 请问windows的raw socket可以接收tcp、udp包么?
  • raw socket能否像udp socket,指定对方ip,port
  • 套接字中,第二个参数SOCK_RAW 与SOCK_PACKET 有什么区别
  • 为什么我的 SOCK_RAW IPPROTO_TCP 啥也收不到?
  • 关于原始套接字SOCK_RAW问题
  • VPACKET.VXD能取得其他网络适配器(非以太网卡,如MODEM)的数据包吗?WIN2K的SOCK_RAW呢?

关键词

  • 协议
  • 消息
  • sock
  • raw
  • 使用
  • icmp
  • udp
  • 接收
  • 接字
  • 返回

得分解答快速导航

  • 帖主:windcsn
  • blastzgd
  • kingzai
  • jia20003

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo