当前位置: 首页 > news >正文

lwIP学习记录5——裸机lwIP工程学习后的总结

1、ping包的TTL生存时间如何修改

当我们把工程烧录到板子上是,我们对板子的IP进行ping包,看到信息如下图

这时候我好奇TTL是什么作用,为什么有的设备是64有的设备是128有的是255?

解:TTL(Time to Live)是IP数据包中的一个字段,用于限制数据包在网络中的存活时间或最大转发跳数。

 初始值设置与操作系统关联

  • TTL=64‌:
    通常由 ‌Linux、类UNIX系统‌(如FreeBSD、Solaris)或 ‌Compaq Tru64‌ 发出。数据包从源主机发出时初始TTL值为64,每经过一个路由器减1‌12。
  • TTL=255‌:
    主要见于 ‌传统UNIX系统‌(如SunOS、NetBSD)。初始TTL值为255,同样每经过路由器减1‌12。
    Windows系统初始TTL通常为128(如Windows NT/XP)

 路径跳数诊断

  • TTL 64‌:
    若返回的TTL值为56,说明数据包从源到目标经过了 64-56=8 个路由器‌56。
  • TTL 255‌:
    若返回值为247,则路径经过 255-247=8 个路由器‌39。
    注意‌:TTL的初始值取决于发送主机的操作系统,与目标主机无关。

TTL的核心作用

  • 防网络环路‌:
    通过逐跳减1机制,确保数据包不会因路由错误无限循环(TTL=0时自动丢弃)‌28。
  • 操作系统识别‌:
    结合返回的TTL值可推断目标主机操作系统(如TTL≈64→Linux,TTL≈128→Windows)‌12。

综上TTL核心价值在于 ‌路径跳数诊断‌ 和 ‌安全风险预警‌。

那么我们的板子如何修改这个值呢?

解:这这个文件下,修改IP_DEFAULT_TTL的值就可以了

官方的注释这么说明:

IP_DEFAULT_TTL: Default value for Time-To-Live used by transport layers.

IP_DEFAULT_TTL:传输层使用的生存时间的默认值。

除了ping包有生存空间,我们的UDP和TCP也有生存时间

 

http://www.dtcms.com/a/294247.html

相关文章:

  • 【C++】类和对象(中)构造函数、析构函数
  • 海信IP501H-IP502h_GK6323处理器-原机安卓9专用-优盘卡刷固件包
  • ZLMediaKit流媒体服务器WebRTC页面显示:使用docker部署
  • Android多开实现方案深度分析
  • Android13重置锁屏(2)
  • 论文略读:Knowledge is a Region in Weight Space for Finetuned Language Models
  • springboot集成LangChain4j
  • 世博会无法在Android上启动项目:无法连接到TCP端口5554:连接被拒绝
  • 2025暑期—05神经网络-BP网络
  • PyCharm配置python软件安装步骤(附安装包)PyCharm 2025 超详细下载安装教程
  • 【CNN】LeNet网络架构
  • 盟接之桥说制造:浅谈“客供共生关系”:构建能力闭环,实现价值共赢
  • 论文笔记:On the Biology of a Large Language Model
  • Java 高频算法
  • Python通关秘籍(七)数据结构——集合
  • mysql什么时候用char,varchar,text,longtext
  • Git 完全手册:从入门到团队协作实战(4)
  • 经典神经网络之LetNet
  • 【前沿技术动态】【AI总结】RustFS:从 0 到 1 打造下一代分布式对象存储
  • Java 时间处理 API 全解析:从 JDK7 到 JDK8 的演进
  • 有序数组中出现次数超过25%的元素
  • 数字人形象视频:开启虚拟世界的全新篇章
  • Linux 723 磁盘配额 限制用户写入 quota;snap快照原理
  • IRF 真机实验
  • [AI8051U入门第八步]硬件IIC驱动AHT10温湿度传感器
  • 密码学中的概率论与统计学:从频率分析到现代密码攻击
  • 【Kubernetes】集群启动nginx,观察端口映射,work节点使用kubectl配置
  • scikit-learn 包
  • 【后端】 FastAPI
  • AI替代人工:浪潮中的沉浮与觉醒