首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

牛x运维常用的工具系列-1

熟话说,工欲善其事必先利其器,作为一个牛 x 运维,得会一点牛 x 的工具,今天就来介绍几个

nali

nali,名字看起来就是中文"哪里"的,该工具主要功能就是识别 IP,附加地理位置信息,安装之后,包含一下命令

  • nali
  • nali-dig
  • nali-nslookup
  • nali-traceroute
  • nali-tracepath
  • nali-ping

nali 是使用纯真数据库 QQWry.dat,所以需要通过 nali-update 来更新数据库文件,该工具查询是本地进行,不进行联网查询,所以效率方面不错。

使用感受一下它的方便:

试下 nali-dig

nali-nslookup

nali-traceroute

nali-tracepath

nali-ping

这么看似乎不过瘾,配好其他工具试一下,通过 nginx 日志查看访问情况

再看看服务器 ssh 被暴力破解的情况

够爽吧!

下载地址:http://www.dwhd.org/wp-content/uploads/2015/08/nali-0.2.tar.gz

dig

dig 是域信息搜索器(Domain Information Groper)的简称,使用 dig 命令可以执行查询域名相关的任务

dig 在服务器安装很简单,它是包含在 bind-utils 包中的,所以直接安装 bind-utils 包就可以

不使用选型的 dig 命令,只返回一个记录,如果要返回全部的记录,只需要添加选项

dig 常用选项:

  • -c,可以设置协议类型(class),包括 IN(默认),CH 和 HS
  • -f,从文件读取内容进行批量查询
  • -4|-6,设置仅适用哪一种作为查询包传输协议,分别对应 IPv4 和 IPv6
  • -t,设置查询类型,默认情况是 A,也可以设置 MX 等类型
  • -q,设置你要查询的域名,是不是觉得没用,当你参数多的时候你就知道它的好处
  • -x,逆向查询,可以查询 IP 地址到域名的映射关系
  • +trace,跟踪 dig 查询过程,从根域开始一直到查询最终结果,整个信息输出
  • +nocmd,节省输出 dig 版本信息
  • +short,进输出最精简的 CNAME 信息和 A 记录

够详细吧!

mtr

mtr 是一个强大的网络诊断工具,它通过更大的采样来跟踪路由,就好像 traceroute+ping 的组合,它也是使用 ICMP 数据包,在新版中,增加可以指定 TCP 模式的 TCP 指定端口运行,避免 ICMP 被防火墙关闭,造成无法使用的情况

直接 mtr ip 或域名,就会进入 mtr 交互界面,实时查看网络流量映像

常用的参数有以下:

  • r 选项标志生成报告
  • w 选项标志使用长版本的主机名
  • c 选项标志设置报告中发送和记录的数据包数量,默认 10
  • i 选项标志以更快的速率运行报告,该标志指定 MTR 每 n 秒发送一个数据包,默认 1 秒

怎么看 mtr,通常我们通过 mtr 看两个问题,丢包和延迟

Host 列:途径的 IP 或本机域名

Packets:

代码语言:javascript
复制
-Loss%列:对应IP行的丢包率
-Snt列:已发送的数据包数

复制代码

Pings:

代码语言:javascript
复制
-Last列:最后一次返回的延迟,单位毫秒
-Avg列:所有返回时延的平均值
-Best列:最快的一次返回时延
-Wrst列:最长的一次返回时延
-StDev列:标准偏差

复制代码

通常情况下,当在任何特点跳点看到一定百分比的丢失,那么可能表明该点路由器存在问题,但是也有另外的情况,就是运营商对 MTR 使用的 ICMP 流量限制,导致丢包的错觉,这个时候,只要看它的下一跳丢包率,如果下一跳丢包率是 0.0%,那么可以确认是 ICMP 限制造成的,如果持续的丢包,多于一个跳,那么网络可能存在丢包或路由问题

输出中没有回应将作为超时显示(???),这个可能的情况是一些路由器将 ICMP 丢弃,或者返回线路可能有问题。

够方便吧!

下载地址:https://github.com/traviscross/mtr.git

tsunami

tsunami 是一种基于 UDP 协议的快速传输工具,专为网络加速诞生,它的思路是,使用 TCP 进行传输控制,UDP 进行数据传输,这样可以无状态的进行数据传输,减少校验及重传确认等过程,从而达到加速传输的目的

下载之后,需要先编译安装,自动编译安装的脚本是 recompile.sh,依赖 autoconf 和 automake,要先安装,之后运行该脚本编译安装

tsunami 分为客户端和服务端,在服务器端,直接运行 tsunamid 指定文件名,或者用"*"表示所有文件,启动服务即可,客户端即可下载指定的文件或该目录下的任意文件

客户端很简单,直接执行 tsunami,进入交互,通过 connect 服务端,链接服务端之后,就可以进行操作

connect 及 dir

get 下载客户端显示

可达到 100+Mbps,服务端信息

够速度吧!

下载地址:https://github.com/cheetahmobile/tsunami-udp.git

常用工具持续更新,欢迎扫码关注,敬请期待!

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/39f2f26e7fdee19e9e5787082
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券