ping命令返回的TTL值判断操作系统

简介:

通过简单的ping命令,查看返回的TTL值来判断对方的操作系统
  生存时间(TTL)是IP分组中的一个值,网络中的路由器通过察看这个值就可以判断这个IP分组是不是已经在网络中停留了很久,进而决定是否要将其丢弃。出于多种原因,一个IP分组可能在很长一段时间内不能抵达目的地。例如:错误的路由有可能导致一个IP分组在网络中无限地循环。一种解决方法就是在一定时间后丢弃这个分组,然后发送一个信息通知这个分组的发送者,由它决定是否重发这个分组。TTL的初始值一般是系统缺省值,它位于IP分组的头部,占用8个二进制位。最初设定TTL值的目的是,让它来指定一段特定的时间(以秒为单位),当这段时间耗尽的时候就将这个分组丢弃。由于每个路由器至少会让这个TTL值减一,所以这个TTL只经常用来指定在一个分组被丢弃之前允许经过的路由器数。每个路由器收到一个分组后就将它的TTL 值减一,一旦这个值被减为0,路由器就会丢弃这个分组,并发送一个ICMP信息给这个分组的最初的发送者。
  UNIX 及类 UNIX 操作系统 ICMP 回显应答的 TTL 字段值为 255
  Compaq Tru64 5.0 ICMP 回显应答的 TTL 字段值为 64
  Windows NT/2K操作系统 ICMP 回显应答的 TTL 字段值为 128
  Windows 95 操作系统 ICMP 回显应答的 TTL 字段值为 32
  注:ICMP报文的类型包括如下:
  ECHO (Request (Type 8), Reply (Type 0))--回显应答,
  Time Stamp (Request (Type 13), Reply (Type 14))--时间戳请求和应答,
  Information (Request (Type 15), Reply (Type16))--信息请求和应答,
  Address Mask (Request (Type 17), Reply (Type 18))--地址掩码请求和应答等
  不同的操作系统,它的TTL值是不相同的。默认情况下:
  Linux系统的TTL值为64或255,
  Windows NT/2000/XP系统的TTL值为128,
  Windows 98系统的TTL值为32,
  UNIX主机的TTL值为255。
  公司使用的是多数为Windows 2000服务器,TTL值默认为128,如果将该值修改为255,攻击者可能会以为这个服务器是Linux系统或UNIX系统,那么他们就会针对Linux系统或UNIX系统来查找Windows 2000服务器的安全漏洞,不过他们是不会找到什么安全漏洞的,这样一来,服务器相来说增加了安全性。
  具体实现方法:
  修改TTL值其实非常简单,通过注册表编辑器就可以实现,点击“开始→运行”,在“运行”对话框中输入“regedit”命令并回车,弹出
  “注册表编辑器”对话框,展开“HKEY_LOCAL_MACHINESystemCurrentControlSetServicesTcpip Parameters”,找到“DefaultTTL”,将该值修改为十进制的“255”,重新启动服务器系统后即可。

最新内容请见作者的GitHub页:http://qaseven.github.io/

目录
相关文章
|
弹性计算 人工智能 运维
摆脱繁琐命令-让运维更加流畅-阿里云ECS操作系统控制台运维篇
阿里云操作系统控制台提供了便捷的服务器监控与管理功能,简化了运维工作。通过将多台服务器纳入统一监控平台,用户可以快速查看CPU、内存、磁盘和网络等关键资源的使用情况,避免了逐一远程连接查询的繁琐操作。此外,该工具支持自动化数据汇总,极大地方便了日报、周报和月报的编写。测试过程中,系统展示了良好的稳定性和响应速度,尤其在网络抖动和大文件健康状态测试中表现出色。整体体验流畅,显著提升了运维效率。 操作系统控制台地址:[点击访问](https://alinux.console.aliyun.com/)
416 26
摆脱繁琐命令-让运维更加流畅-阿里云ECS操作系统控制台运维篇
|
Linux 网络安全 Android开发
高级 ping 命令及技巧
Ping命令是一种常用的网络诊断工具,用于测试网络连接的可达性和延迟等信息
3224 57
|
Linux iOS开发 网络架构
如何使用 Ping 命令监测网络丢包情况?
如何使用 Ping 命令监测网络丢包情况?
15270 48
|
弹性计算 前端开发 Ubuntu
OS Copilot全命令测评报告
作为一名Web前端工程师,我使用OS Copilot的`-t`、`-f`和`|`功能进行了测试。通过创建ECS实例并安装OS Copilot,我顺利完成了以下任务: 1. 环境搭建:使用`-t`参数获取了详细的静态页面发布步骤,解决了环境配置问题 2. 多步操作:借助`-f`参数自动化安装和配置httpd服务器,简化了多步骤操作 3. 文件分析:利用`|`功能分析HTML文件内容,确认是否符合预期 整个过程顺畅无阻,特别是`-t`和`-f`功能极大提高了工作效率。建议将这些功能设为默认自带,以减少安装步骤。总结来说,OS Copilot在处理复杂任务时表现出色,提供了详尽的操作指引和自动化支持
197 8
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
2223 20
|
Python 机器学习/深度学习 人工智能
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
【10月更文挑战第1天】本文通过构建一个简单的强化学习环境,演示了如何创建和训练智能体以完成特定任务。我们使用Python、OpenAI Gym和PyTorch搭建了一个基础的智能体,使其学会在CartPole-v1环境中保持杆子不倒。文中详细介绍了环境设置、神经网络构建及训练过程。此实战案例有助于理解智能体的工作原理及基本训练方法,为更复杂应用奠定基础。首先需安装必要库: ```bash pip install gym torch ``` 接着定义环境并与之交互,实现智能体的训练。通过多个回合的试错学习,智能体逐步优化其策略。这一过程虽从基础做起,但为后续研究提供了良好起点。
2448 4
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
|
Linux iOS开发 MacOS
如何设置 Ping 命令的超时时间?
如何设置 Ping 命令的超时时间?
2868 3
|
运维 监控 Linux
别再只会使用简单的 ping 命令了,Linux 中这些高级 ping 命令可以提高工作效率!
在 Linux 系统中,ping 命令不仅用于检测网络连通性和延迟,还拥有多种高级选项和技巧,如定制数据包大小、获取详细统计信息、持续 ping、指定源地址和多目标 ping。本文详细介绍这些高级命令及其在性能测试、故障排查和网络监控中的实际应用,帮助你提升网络管理效率。
1328 3
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
1390 3

推荐镜像

更多