- 博客(18)
- 资源 (2)
- 收藏
- 关注
原创 揭秘mDNS:零配置网络解析协议详解
mDNS(组播DNS)是一种零配置协议,允许局域网设备通过组播(IPv4 224.0.0.251或IPv6 ff02::fb)自主发现和解析主机名。它采用标准DNS报文格式,包含头部、问题部分和资源记录三部分:头部通过标志位区分查询/响应(QR)、权威应答(AA)等状态;问题部分定义查询目标(如example.local)和类型(A/AAAA/PTR记录);资源记录则携带IP、服务等具体数据。mDNS通过组播查询-响应机制实现设备发现,支持冲突检测,采用短TTL适应动态网络。
2025-11-10 11:12:18
715
原创 DNS报文结构全解析
DNS报文采用统一二进制格式,包含头部和四个核心部分。12字节的头部包含事务ID、控制标志和记录计数器。问题部分存储查询域名的标签序列和查询类型。响应部分使用资源记录格式,包含域名、类型、TTL和数据等信息。报文中通过压缩标签技术减少重复域名数据的传输。DNS协议通过这种结构化设计实现高效的域名解析功能。
2025-11-05 17:01:45
325
原创 Linux下获取网络配置的C语言实现
该代码提供了三个网络配置信息获取函数:1) get_ip()获取指定网口的IP地址;2) get_netmask()获取子网掩码;3) get_gateway()获取默认网关。前两个函数通过socket和ioctl系统调用实现,第三个函数通过解析iproute命令输出获取网关信息。每个函数都接收网口名称、存储缓冲区和大小作为参数,返回0表示成功。这些函数可用于Linux系统下的网络配置信息查询。
2025-10-13 15:46:15
94
原创 Linux下配置网络参数的C语言实现
该函数实现了网卡地址设置功能,包括IP地址、子网掩码和网关配置。首先创建socket并获取网卡接口,然后依次执行:1)禁用网卡;2)设置IP地址;3)配置子网掩码;4)重新启用网卡;5)添加网关路由。每个步骤都包含错误检测和处理,使用ioctl系统调用来完成网络配置。函数返回0表示成功,错误时返回-1并输出错误信息。整个过程遵循"先禁用-配置-再启用"的安全模式,确保网络参数变更的正确性。
2025-10-13 15:43:56
105
原创 UltraEdit v26(补丁工具)
要使用补丁工具后,还需要注意以下事项。需要通过防火墙设置出入站规则。以Windos为例:1、禁止licensing服务器地址入站,通过防火墙。2、禁止ultraedit连网。3、禁止更新。...
2020-03-07 11:13:08
3668
原创 UltraEdit语法语言高亮配置文件
语法文件官方下载地址:https://www.ultraedit.com/downloads/extras/wordfiles.html#wordfiles添加语法高亮文件:1、V24.00及以后版本:使用“添加和移除语言”功能,单击“添加其它语言”编码选项卡(高级->设置->编辑显示->语法高亮)。2、V15.00及以后版本:将语法高亮文件,保存(拷贝)到“%A...
2020-03-04 15:50:34
6839
原创 PADS各层的用途和作用
Top:顶层,走线与放置元器件。Bootm:底层,走线与放置元器件。Layer3~Layer20:普通层,可以走线但不可放置器件;不需要这么多层时,也可以用来做一些gerber标示。Solder Mask Top:顶层阻焊层(没有绿油覆盖)。Paste Mask Bottom:底层锡膏层,做钢网。Paste Mask Top:顶层锡膏层。Drill Drawing:孔位层,...
2020-02-12 13:40:31
3811
原创 模拟地和数字地之间的连接方法
1、模拟地和数字地单点接地只要是地,最终都要接到一起,然后入大地。如果不接在一起就是"浮地",存在压差,容易积累电荷,造成静电。地是参考0电位,所有电压都是参考地得出的,地的标准要一致,故各种地应短接在一起。人们认为大地能够吸收所有电荷,始终维持稳定,是最终的地参考点。虽然有些板子没有接大地,但发电厂是接大地的,板子上的电源最终还是会返回发电厂入地。如果把模拟地和数字地大面积直接相连,会导致...
2020-02-10 12:18:22
14853
2
原创 PADS逻辑系列含义
Family(逻辑族) 中英文大意 Prefix(前缀) ANA U BGA Ball Grid Array(球栅阵列封装) U BPF U ...
2020-02-04 21:46:02
9522
原创 TVS与ESD的区别
1、用途ESD:静电放电管,主要用在关键引脚上起到静电保护作用TVS:瞬态抑制二极管,具有很快的响应能力和强大的浪涌吸收能力,主要用在电源输入端用来吸收浪涌。2、引脚数量TVS:根普通二极管引脚数据相同,两个引脚ESD:需要三个引脚(1个GPIO、1个电源+、1个电源-)3、应用电路TVS:主要作用于电源输入端的防浪涌保护,瞬间吸收浪涌电流对后级电路起到保护作用ESD:释放公共端引...
2020-01-22 10:22:44
12893
原创 NTP协议
概述 NTP(Network Time Protocol)网络时间协议基于UDP,用于网络时间同步的协议,使网络中的计算机时钟同步到UTC,再配合各个时区的偏移调整就能实现精准同步对时功能。提供NTP对时的服务器有很多,比如微软的NTP对时服务器,利用NTP服务器提供的对时功能,可以使我们的设备时钟系统能够正确运行。SNTP(Simple Network Time Protocal简单...
2020-01-14 19:41:39
1148
转载 socketopt 函数
本文转载链接:https://www.cnblogs.com/Ansing/p/5915538.html 功能描述: 获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和选...
2020-01-14 17:20:28
1165
原创 getenv 函数
描述C标准库<stdlib.h>函数,用于获取环境变量值。原型char *getenv(const char *name)参数name -- 包含被请求变量名称的字符串。返回值返回一个以 null 结尾的字符串,该字符串为被请求环境变量的值。如果该环境变量不存在,则返回 NULL。环境变量(多用于CGI)“SERVER_NAME”:当前运行所在服务器主机的名...
2020-01-06 10:54:12
6513
转载 C语言运算符优先级
本文转载链接:https://blog.youkuaiyun.com/huangminqiang201209/article/details/8271791 C语言运算符优先级优先级运算符名称或含义使用形式结合方向说明1[]数组下...
2020-01-03 17:18:01
202
原创 日期时间换算成秒
1.由于存在闰月,将1月与2月当于上一年的11月与12月计算,3月才开始作为当年的第一个月,减出闰年的影响month = month - 2; //注意此处为有符号数if (month <= 0){ month += 12; year -= 1;}2.计算一共有多少天t_day = (unsigned long)(year/4 - year/100 + year...
2020-01-03 16:10:08
3742
原创 秒换算成日期时间
1.得到的时间秒数+UTC偏移量如:北京时间UTC+08:00sec = sec + BEIJINGTIME*60*60;//小时要换算成秒2.通过秒计算出总天数day= sec/DAY; //DAY=24*60*603.通过计算到的总天数减出初始日期天数day=day-YEARSTART; //默认初始年份1970年YEARSTART=0, 设定初始年份2000年YEARST...
2020-01-03 15:28:28
7175
轻量级SNTP服务器原代码(时间参考linux系统时间)
2020-03-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅