lua – NodeMCU UDP DNS请求格式
发布时间:2020-12-15 00:17:08 所属栏目:大数据 来源:网络整理
导读:我正在寻找建立在NodeMCU平台上的 this example强制门户网站,我正在努力了解DNS请求的工作原理. (相关文件是dns-liar.lua)我或多或少地解码了响应的内容,但不知道它的每个部分是做什么的,而且我找不到任何显示类似数据包结构的在线资源. NodeMCU的IP: a.b.c
我正在寻找建立在NodeMCU平台上的
this example强制门户网站,我正在努力了解DNS请求的工作原理. (相关文件是dns-liar.lua)我或多或少地解码了响应的内容,但不知道它的每个部分是做什么的,而且我找不到任何显示类似数据包结构的在线资源.
NodeMCU的IP: a.b.c.d 请求: |A|B| ... |(13th byte) terminated string (str)| ... 响应:(以“|”分隔的字节数) |A|B|x80|x00|x00|x01|x00|x01|x00|x00|x00|x00|str|x00|x01|x00|x01|xC0|x0C|x00|x01|x00|x01|x00|x00|x03|x00|x00|x04|a|b|c|d| 我认为str可能是要搜索的域,而abcd只是NodeMCU用自己的IP地址响应每个请求,但我不确定其他任何字节是做什么的. 解决方法
呼!当人们决定提前格式化几乎整个数据包时,这总是很棘手,特别是当它跨越RFC的几个子部分时.
无论如何,我继续前进并分叉CaptiveIntraweb并评论了DNS代码.我还有submitted a PR我的更改所以它有望在未来的版本中被拉上游.您可以在那里阅读整个内容(它详细介绍了每个DNS字段),但以下是作者正在做的事情的重点: >前两个字节是从请求中解析的ID字段的副本>接下来的10个字节是预制的标题,包括数据包的类型等等(…_ str1).>下一个X字节是请求中请求的NAME的副本>接下来的4个字节是问题数据的其余部分(类型/类),接下来的14个字节是压缩的NAME,以及响应的类型/ class / ttl / length(…_ str2).>最后,最后四个字节是节点的IP. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- perl 中字符串比较和整数比较的区别
- Angularjs+ThinkPHP3.2.3集成微信分享JS-SDK实践
- 沿着地铁买房怎样更划算?2017上海城市大数据报告
- perl – 安装了DBD-mysql,但仍然出现错误“insta
- Sicily E1_fib1 斐波那契数列取模(大数)分治算
- django-ForeignKey,OneToOneField,ManyToManyFie
- Inno setup 简单打包教程
- delphi – 如何在FastMM4中启用完全调试模式?
- 从另一个Lua文件加载参数时如何将参数传递给Lua文
- php – Laravel API TokenMismatchException
热点阅读