ARP 协议编程问题. 急呀! 高分求救呀1 正好最近作过这个方面的针对性研究。http://blog.csdn.net/liuxk99/archive/2004/09/17/108084.aspx需要代码可以发给你[email protected] 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以不用ARP协议的,方法有21。用SendARP(IP Helper里面的东西,但是仅仅支持win2000/xp)2.ping就可以了,如果对方存在防火墙的话,虽然不会返回icmp包,但是我这个时候就可以读取本地ARP缓冲表,用IP Helper里面的一个xx函数(偶不记得那个了,好像是GetIpNetTable),ping可以用系统的ping,用CreateProcess来循环调用,或者用IPHelper里面的IcmpSendEcho。这样就不要这么费周章了,比较winpcap是驱动级的,要安装。 纠正错误:可以不用ARP协议的改为可以不用winpcap的 to iorikingdom(iori)“2.ping就可以了,如果对方存在防火墙的话,虽然不会返回icmp包,但是我这个时候就可以读取本地ARP缓冲表,用IP Helper里面的一个xx函数(偶不记得那个了,好像是GetIpNetTable),ping可以用系统的ping,用CreateProcess来循环调用,或者用IPHelper里面的IcmpSendEcho。这样就不要这么费周章了,比较winpcap是驱动级的,要安装。”这个方法有实现的代码没有?我很想知道其中的细节。有的话能不能发过来,[email protected]。不过通常用线程来发送和接受网络包,CreateProcess有点费资源吧! 没有现成的代码,我一般都是用别人的程序遍历ping一把,然后在命令提示符里面输入arp -a 这个就是懒人的做法,呵呵 ping采用的是icmp协议,《windows网络编程技术》13章讲解如何使用原始套接字来ping.ping不能穿越天网防火墙吧,在xp里面观察到的,可能是因为在tcp/ip协议栈中设置这个策略。但arp协议可以准确的查出ip到mac的映射!优化大师里有群集ping,用的就是多线程。to XmagicX(与code无缘)我还头次听说面试靠arp的,不知是那家公司,考的这么底层的东西。 楼上的兄弟,你可能没有了解到数据包的发送过程,icmp协议又怎么样?不一样要发送arp请求获取目标MAC,才能够填充icmp的帧头,除非本地的ARP映射表已经有了这个值供你数据包的查询,防火墙是能够截获icmp但是arp请求在这个时候已经成功,已经更新了系统的ARP表,所以你返不返回icmp不重要,重要是更新了ARP表,事实胜于雄辩,你应该自己试试。我这个方法是有点冗余,但是简单,起码你不用解包截包,不过说起来用winpcap不是很难,看各人爱好吧,反正偶懒人一个。 “ping不能穿越天网防火墙吧,在xp里面观察到的,可能是因为在tcp/ip协议栈中设置这个策略”这句话我不大理解你的意思。Icmp协议可以用NDIS中间层,或者NDIS HOOK的技术来截获,天网好像就是用NDIS 协议HOOK的技术来处理的,其实TDI还是可以截获ICMP的,但是微软不提供接口。所以在TDI传输层和SPI会话层都不可以截获ICMP,而不是因为什么策略。防火墙的原理和协议栈驱动希望楼上能够温习温习。不好意思,今天心情有点不好,得罪之处万望见谅。 "ping不能穿越天网防火墙吧,在xp里面观察到的,可能是因为在tcp/ip协议栈中设置这个策略"更正一下在防火墙软件中可以设置icmp响应的策略。当然ping的时候,首先检查缓冲区,如果没有还是会调用arp协议来获得对应的mac地址,这些方法最后都是用的arp,呵呵,没有问题。 "ping不能穿越天网防火墙吧,在xp里面观察到的,可能是因为在tcp/ip协议栈中设置这个策略"更正一下在防火墙软件中可以设置icmp响应的策略。当然ping的时候,首先检查缓冲区,如果没有还是会调用arp协议来获得对应的mac地址,这些方法最后都是用的arp,呵呵,没有问题。 "ping不能穿越天网防火墙吧,在xp里面观察到的,可能是因为在tcp/ip协议栈中设置这个策略"更正一下在防火墙软件中可以设置icmp响应的策略。当然ping的时候,首先检查缓冲区,如果没有还是会调用arp协议来获得对应的mac地址,这些方法最后都是用的arp,呵呵,没有问题。 我有篇文章不错讲解ARP的,email? CListCtrl的SetItemData()有什么作用? vc2005中ComboBox的addString datagrid数据库操作 如何像word那样在矩形块中编辑文字? 如何在菜单栏中添加非菜单类控件?参考Word 2003。 大哥帮忙啊,急急!! 象QQ那样最小化到系统托盘里的效果是怎么实现的呢??????? 我(菜鸟)想找一位可以请教的老师 为什么自己写的类不能加入到MFC的工程中? 如何获得一个process的首地址 请问这里有错吗??为什么LoadLibrary成功而GetProcAddress失败呀 关于arp表
方法有2
1。用SendARP(IP Helper里面的东西,但是仅仅支持win2000/xp)
2.ping就可以了,如果对方存在防火墙的话,虽然不会返回icmp包,但是我这个时候就可以读取本地ARP缓冲表,用IP Helper里面的一个xx函数(偶不记得那个了,好像是GetIpNetTable),ping可以用系统的ping,用CreateProcess来循环调用,或者用IPHelper里面的IcmpSendEcho。这样就不要这么费周章了,比较winpcap是驱动级的,要安装。
改为
可以不用winpcap的
“2.ping就可以了,如果对方存在防火墙的话,虽然不会返回icmp包,但是我这个时候就可以读取本地ARP缓冲表,用IP Helper里面的一个xx函数(偶不记得那个了,好像是GetIpNetTable),ping可以用系统的ping,用CreateProcess来循环调用,或者用IPHelper里面的IcmpSendEcho。这样就不要这么费周章了,比较winpcap是驱动级的,要安装。”
这个方法有实现的代码没有?我很想知道其中的细节。有的话能不能发过来,[email protected]。
不过通常用线程来发送和接受网络包,CreateProcess有点费资源吧!
在命令提示符里面输入arp -a 这个就是懒人的做法,呵呵
ping不能穿越天网防火墙吧,在xp里面观察到的,可能是因为在tcp/ip协议栈中设置这个策略。但arp协议可以准确的查出ip到mac的映射!优化大师里有群集ping,用的就是多线程。to XmagicX(与code无缘)
我还头次听说面试靠arp的,不知是那家公司,考的这么底层的东西。
不一样要发送arp请求获取目标MAC,才能够填充icmp的帧头,除非本地的ARP映射表已经有了这个值供你数据包的查询,防火墙是能够截获icmp但是arp请求在这个时候已经成功,
已经更新了系统的ARP表,所以你返不返回icmp不重要,重要是更新了ARP表,
事实胜于雄辩,你应该自己试试。
我这个方法是有点冗余,但是简单,起码你不用解包截包,不过说起来用winpcap不是很难,
看各人爱好吧,反正偶懒人一个。
能够温习温习。不好意思,今天心情有点不好,得罪之处万望见谅。
更正一下
在防火墙软件中可以设置icmp响应的策略。
当然ping的时候,首先检查缓冲区,如果没有还是会调用
arp协议来获得对应的mac地址,这些方法最后都是用的arp,呵呵,没有问题。
更正一下
在防火墙软件中可以设置icmp响应的策略。
当然ping的时候,首先检查缓冲区,如果没有还是会调用
arp协议来获得对应的mac地址,这些方法最后都是用的arp,呵呵,没有问题。
更正一下
在防火墙软件中可以设置icmp响应的策略。
当然ping的时候,首先检查缓冲区,如果没有还是会调用
arp协议来获得对应的mac地址,这些方法最后都是用的arp,呵呵,没有问题。