博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为什么在UDP包中不能获取发包方的地址
阅读量:6242 次
发布时间:2019-06-22

本文共 400 字,大约阅读时间需要 1 分钟。

首先,我们要先了解一下UDP包的结构。

                                  图1 UDP报文格式

从图1,我们可以看出,从UDP包中,我们可以获取的信息只有源端口和目的地端口。我们不能获取到源IP因为报文中没有源IP。真正包含IP地址的是。

                                   图2 UDP包的IPV4伪报头格式

可以看出,图1中的UDP包其实是包含在图2中的,图2中清楚地指出了包的源地址(source addresses)和目标地址(destination addresses)都在IPv4头中。图2的协议是UDP专用的(详见):17(0x11)。UDP length指的是UDP头(head)和数据(data)的长度。

再让我们通过抓包工具直观地看一下,见图3。

                                                      图3 抓包工具的截图

那么我们如何获取一个IP地址呢?

方法1、查看ARP表是最简单的方法。

方法2、使用libpcap是最可靠的。可以参考。

方法3、写自己的网卡驱动,应该没几个人会这样搞。

 

 

参考链接

转载地址:http://fssia.baihongyu.com/

你可能感兴趣的文章
jquery ajax提交表单数据的两种方式
查看>>
hdu 2102 A计划-bfs
查看>>
学习集合
查看>>
18校招借鉴
查看>>
JAVA第三次作业
查看>>
2017ICPC北京 J:Pangu and Stones
查看>>
Pandas 数据清洗保存
查看>>
SpringBoot + nodeJS + zookeeper 搭建微服务示例
查看>>
《互联网时代》第二集·浪潮
查看>>
8.10 exec函数
查看>>
Shell命令-文件及内容处理之sort、uniq
查看>>
Android 之文件夹排序
查看>>
Java Assert 用法简介
查看>>
关于redo size(一)
查看>>
We Know What @You #Tag: Does the Dual Role Affect Hashtag Adoption-20160520
查看>>
(转)Eclipse新增安卓虚拟机
查看>>
SpringMvc访问Controller去掉do
查看>>
PHPnow升级PHP 5.4与Mysql 5.5
查看>>
正则表达式验证邮箱格式
查看>>
如何围绕企业战略,建设BI驾驶舱?
查看>>