linux查看某个ip流量--思路一例
在我之前的文章中分享过“实时”查看Linux某些网卡流量的小脚本,今天再分享一个查看本机到具体某个ip间的流量的思路。我有这个需求是因为:我们的存储是Dell存储设备通过nfs协议供多台业务机挂载使用,而我有必要了解每台机器和Dell存储之间的流量。
其实,如果仅仅是要看这个流量,iftop这个软件就很好,通过其自身的选项就能满足了,不需要再做什么额外的工作。
我的情况是:由于nfs客户机众多,而且虽是挂载一台存储设备但挂载点ip却不一样,并且我想把这个作为一个监控项放到zabbix里,所以我就需要用shell对iftop做进一步的“封装”,以便能够“通用”些且更好的和zabbix结合。
注意:iftop需要root权限,而zabbix-agent一般是以zabbix用户运行且通过zabbix-server调用agent端的自定义脚本时是没有终端(tty)的,这里就需要修改sudo的配置文件了,允许zabbix用户远程执行命令的过程中执行sudo操作。
脚本内容如下
#!/bin/sh #在zabbix上监控各机器与nfs server之间的流量 #by ljk 20160803net='192.168.1.*' #内网网段 nfs_subnet='192.168.1.2[0-9]{2}' #nfs所在ip的正则 #获取nfs server的真实ip,前提是每台server无论几个挂载点,都只从一个ip挂载 nfs_ip=$(df -h|egrep "$nfs_subnet:"|awk -F : '{print $1}'|sort|uniq)cd /etc/sysconfig/network-scripts for dev in $(ls ifcfg-*|awk -F - '{print $2}');doip addr show $dev|grep '192.168.1.*' >/dev/null #判断哪个网卡有内网网段ipif [ $? -eq 0 ];thenusing_dev=$dev #拥有内网ip的网卡名赋予变量using_devbreakfi doneif [ "$1" == "request" ];thenresult=$(sudo iftop -i $using_dev -n -t -s 10 2>/dev/null | egrep -B 1 $nfs_ip|awk '$(NF-4)=="=>" {print $(NF-1)}')elif [ "$1" == "response" ];thenresult=$(sudo iftop -i $using_dev -n -t -s 10 2>/dev/null | egrep -B 1 $nfs_ip|awk '$(NF-4)=="<=" {print $(NF-1)}') fi#下面部分是为了适用于zabbix而做的一些额外的工作 #iftop出来的结果为(6.60Mb 208Kb 320b等),将其结果整合进zabbix时要去掉这些单位并对数值做转换(zabbix里我统一用b做单位,只给zabbix传数值) if [ -z "$result" ];thenecho 0 elsenum=$(echo $result|tr -d "a-zA-Z")unit=`echo ${result: -2:1}`case $unit in[kK]) echo "$num*1024"|bc;;[mM]) echo "$num*1024*1024"|bc;;[gG]) echo "$num*1024*1024*1024"|bc;;*) echo "$num"esac fi
linux查看某个ip流量--思路一例相关推荐
- 【网络】流量监控 - iftop|ifstat|查看某个ip流量|tcpdump|iptraf|Linux
目录 流量监控18个常用工具 tcpdump查看某个端口数据 ifstat iftop 四.运行iftop 五.相关参数及说明 1.iftop界面相关说明 2.iftop相关参数 常用的参数 按端口显 ...
- linux查看出口IP
linux查看出口IP 1,614 views, Linux, by 木木. 因为某种原因,需要知道本地服务器出口IP,可以用以下方法检测: wget http://members.3322.org/ ...
- Linux查看实时网卡流量的几种方式
Linux查看实时网卡流量的几种方式 来源 https://www.jianshu.com/p/b9e942f3682c 在工作中,我们经常需要查看服务器的实时网卡流量.通常,我们会通过这几种方式查 ...
- linux 查看网络流量来源_详解Linux查看实时网卡流量的几种方式
在工作中,我们经常需要查看服务器的实时网卡流量.通常,我们会通过这几种方式查看Linux服务器的实时网卡流量. 1. sar -n DEV 1 2 sar命令包含在sysstat工具包中,提供系统的众 ...
- 【linux查看出口IP(curl cip.cc)】
linux查看出口IP(curl cip.cc) 通过curl cip.cc命令查看服务器外网ip
- linux 怎么看内网,linux 查看内网流量
可以使用iftop进行Linux机器的网络流量监控 安装方法 centos系统下 第一步:安装EPEL源 yum install epel-release 第二部:安装iftop yum instal ...
- ubuntu 网卡流量_详解Linux查看实时网卡流量的几种方式
在工作中,我们经常需要查看服务器的实时网卡流量.通常,我们会通过这几种方式查看Linux服务器的实时网卡流量. 1. sar -n DEV 1 2 sar命令包含在sysstat工具包中,提供系统的众 ...
- linux查看虚拟机ip的方法
步骤: 1,输入ip addr 2,对网址进行配置 vi/etc/sysconfig/network-scripts/ifcfg-[网卡的名字] 例:vi/etc/sysconfig/network- ...
- linux tc 限制ip流量,linux tc实现ip流量限制
tc是个配置Linux内核流量控制的工具 名字 tc - 显示/维护流量控制配置 摘要 tc qdisc [ add | change | replace | link ] dev DEV [ par ...
最新文章
- 苹果内购和 Apple Pay
- python rtf转txt_将DOC、RTF格式文件批量转为TXT格式文件
- CSS3选择器的研究
- 我国高性能计算机发展,中国高性能计算机发展水平与趋势
- mysql志新计划,在使用Perl DBI迭代结果集时更新MySQL表是否安全?
- keystore是个嘛东西
- 框架源码深入需要准备的知识之解析XML
- 2020 年百度之星#183;程序设计大赛 - 初赛三
- mybatis 3.2.3 maven dependency pom.xml 配置
- 总结一下自己脑海里的JavaScript吧(一)--DOM模型
- PSP 版本6.60 破解 PRO-B10自制系统升级图文教程
- SpringCloud之服务网关(总体第五篇)
- Go 爬虫软件 Pholcus
- 解决视频资源音乐资源在Android模拟器中不能播放的问题
- mysql 5.7 在线ddl
- 推荐书籍---豆瓣9.2分---《编码:隐匿在计算机软硬件背后的语言》
- 测验6: 组合数据类型 (第6周) + 练习6: 组合数据类型 (第6周)
- java webservice用户名密码_WebService 用户名密码验证
- 数字IC后端流程——(三)布局Placement
- Sloan中性群落模型(NCM)推断群落构建原理及其R实现