CentOS 7中ping外网返回的数据分别是什么含义

CentOS 7中ping外网返回的数据分别是什么含义

前言:前几天面试通过了一家大数据公司的运维岗,今天用虚拟机ping外网的时候突然想知道返回的数据都代表着什么,于是内事不决问于百度,看完一遍感觉过两天就忘了,于是我的第一篇优快云出现了。
PS:刚刚毕业,实在水平有限,有问题的地方请诸位不吝赐教。

一、CentOS 7 ping命令浅析
我们先随便ping一个百度看看:在这里插入图片描述
我们标个号一个一个解释一下:
在这里插入图片描述
① ping目标主机的域名和ip,平时我们写:www.baidu.com写的很爽,但是电脑是不识别的,它们需要通过DNS将网址解析成ip地址才能识别。
后面的“56(84)”是发送的数据包的不带包头的包大小和带包头的包大小。
② 64 bytes from 183.232.231.172就很简单了,意思是从ip为183.232.231.172的地址接收到64比特的数据。
③ ICMP是Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。
icmp_seq=4,代表接收到的第四个包,4是ping的序列,如果中间不连续了,就代表着丢包了,比如我的截图中序列是1-3-4,缺了一个2,说明第二个包丢了;
ttl=128代表剩余的ttl,下面详细解释;
time=32.1 ms 大家应该都理解,响应时间,有时也叫延迟,数值越小速度越快。
②和③合起来的意思就是:在32.1ms内,收到来自183.232.231.172的第4个ICMP报文。
④ 发出去的包数,返回的包数,丢包率,耗费时间;
最小 / 最大 / 平均响应时间 / 本机硬件耗费时间。

二、部分扩展

  1. ping命令参数对照:
    在这里插入图片描述
  2. TTL浅析
    TTL的作用是限制IP数据包在计算机网络中的存在的时间,避免IP包在网络中的无限循环和收发,节省了网络资源,并能使IP包的发送者能收到告警消息。TTL的最大值是255,常见一般设置为64或128。
    虽然TTL从字面上翻译(Time To Live),是数据包可以存活的时间,但实际上TTL是IP数据包在计算机网络中可以转发的最大跳数。
    TTL字段由IP数据包的发送者设置,在IP数据包从源到目标地址整个转发路径上,每经过一个路由点,路由点都会把该包的TTL的值减1,然后再将IP包转发出去。如果在数据包到达目标IP之前,TTL减少为0,路由点将会丢弃收到的TTL=0的数据包并向数据包的发送者发送 ICMP time exceeded消息。

参考资料:https://www.cnblogs.com/operationhome/p/9848138.html

### 如何在CentOS 7上安装Redis 5.0.0 #### 准备工作 确保系统已经更新到最新状态并安装必要的开发工具包。 ```bash sudo yum update -y sudo yum groupinstall "Development Tools" -y ``` #### 下载与编译源码 下载指定版本的 Redis 源代码压缩包,并解压后进入目录进行编译。 ```bash cd /tmp/ wget http://download.redis.io/releases/redis-5.0.0.tar.gz tar xzf redis-5.0.0.tar.gz cd redis-5.0.0 make ``` #### 安装至系统路径下 编译完成后,将二进制文件复制到系统的 `/usr/local/bin` 路径以便全局调用。 ```bash sudo make install ``` #### 创建配置文件和数据存储位置 创建专门用于存放配置文件以及持久化数据的位置,并调整权限给 `redis` 用户组管理。 ```bash sudo mkdir -p /etc/redis /var/lib/redis sudo chown redis:redis /var/lib/redis sudo chmod 770 /var/lib/redis ``` #### 修改默认配置文件适应生产环境需求 基于官方提供的模板定制适合本地部署场景的服务参数设定;这里特别需要注意的是要按照特定的要求去更改一些重要的选项[^4]: * 将监听地址由localhost更改为实际服务器IP; * 开启守护进程模式让服务以后台方式运行; * 设置PID保存路径方便后续管理和监控; * 启动集群支持功能及其关联属性; * 设定合理的超时时间防止网络延迟影响正常通信; * 如果业务逻辑允许的话建议启用AOF机制提高数据安全性。 编辑后的部分关键项如下所示: ```properties bind 实际外网ip daemonize yes pidfile /var/run/redis_7000.pid cluster-enabled yes cluster-config-file nodes_7000.conf cluster-node-timeout 15000 appendonly yes ``` #### 添加Systemd服务单元定义 为了能够利用Linux自带的服务管理系统轻松控制Redis实例的状态变化,在/etc/systemd/system/内新建名为`redis.service`的服务描述文档。 ```ini [Unit] Description=Redis In-Memory Data Store After=network.target [Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target ``` #### 加载新的service配置并启动服务 使刚才建立好的unit file生效,接着尝试开启该应用验证是否一切顺利无误。 ```bash sudo systemctl daemon-reload sudo systemctl start redis sudo systemctl enable redis ``` #### 测试连接情况 最后一步就是确认客户端能否成功接入刚刚搭建起来的新版数据库引擎了。 ```bash redis-cli ping ``` 如果返回PONG则说明整个流程顺利完成!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值