当前位置: 首页 > 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.lryc.cn/news/597391.html

相关文章:

  • 【bug】websocket协议不兼容导致的一个奇怪问题
  • Linux 723 磁盘配额 限制用户写入 quota;snap快照原理
  • Linux 环境下安装 MySQL 8.0.34 二进制 详细教程 附docker+k8s启动
  • VU2 学习笔记4 计算属性、监视属性
  • 北京互联网公司面试题精华解析
  • 计算机网络学习----Https协议
  • 直接偏好优化(DPO):原理、演进与大模型对齐新范式
  • python-82-基于ORM操作数据库(一)简单模型CRUD
  • UniappDay01
  • JavaWeb笔记12
  • MySQL深度理解-深入理解MySQL索引底层数据结构与算法
  • 容联云携手信通院,启动“智能体服务生态共创计划”
  • 华为云ELB(弹性负载均衡)持续报异常
  • 2025年Zigbee技术白皮书:全球物联网无线通信的关键创新
  • HF86611_VC1/HF86611Q_VC1:多通道USB HiFi音频解码器固件技术解析
  • 【自动化运维神器Ansible】深入解析Ansible Host-Pattern:精准控制目标主机的艺术
  • .Net core 部署到IIS出现500.19Internal Server Error 解决方法
  • Ubuntu系统下FFmpeg源码编译安装
  • 内网穿透技术深析:从原理到工具应用的全方位解读,无公网IP本地服务器外网访问实操
  • IGM弧焊机器人气体节约
  • 【数据结构】哈希——位图与布隆过滤器
  • 彩色转灰度的核心逻辑:三种经典方法及原理对比
  • zabbix监控MySQL数据库
  • 企业选择将服务器放在IDC机房托管的优势
  • React+Three.js实现3D场景压力/温度/密度分布可视化
  • Spring Boot与Python的联动:实战案例解析
  • 【智能模型系列】Unity通过访问Ollama调用DeepSeek模型进行本地部署
  • AI产品经理面试宝典第46天:模型评估与Prompt工程核心考点解析
  • Elasticsearch整合:Repository+RestClient双模式查询优化
  • iOS加固工具有哪些?企业级团队协作视角的实战分析