第六周 网络管理命令、进程监控

一、osi七层模型和TCP/IP五层模型

1、模型图

OSI1

2、每一层的功能和用到的协议

osi3

OSI2

 

二、iproute2家族

iproute2

1、概述

ip 是 iproute2 软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具。例如: ifconfig、route 等。

2、命令格式

ip [ OPTIONS ] OBJECT { COMMAND | help }

● OPTIONS

-V, -Version:打印ip的版本;

-s, -stats, -statistics:输出更加详细的信息;

-f, -family: 这个选项后面接协议种类,包括:inet、inet6或者 link,强调使用的协议种类;

-o, -oneline:对每行记录都使用单行输出,换行符使用”\”代替。 如果需要使用 wc、grep 等工具处理 ip的输出会用到这个选项;

-r, -resolve:查询域名解析系统,用获得的主机名代替主机IP地址;

-4:是-family inet的简写;

-6:是-family inet6的简写;

-0:是-family link的简写。

● OBJECT

link:网络设备(网卡);

address:网卡的IP或者IPv6地址;

neighbor:ARP或者NDISC缓冲区条目;

route:路由表条目;

rule:路由策略数据库中的规则;

maddress:多播地址;

mroute:多播路由缓冲区条目;

tunnel:IP隧道,比如GRE。

● COMMAND

COMMAND 设置针对指定对象执行的操作,一般情况下,ip 支持对象的操作有:增加(add)、删除(delete)和展示(show 或者 list)。这个命令会列出这个对象支持的命令和参数的语法,如果没有指定对象的操作命令,ip 会使用默认的命令。一般情况下,默认命令是list,如果对象不能列出,就会执行 help 命令。

3、使用实例

● ip link set:修改设备的属性

table1

● ip link show:显示设备的属性

table2

输出格式如下,只显示处于活动状态的接口信息,信息中可以看到接口的状态、MTU、MAC地址、队列长度等信息;

IP1

使用-s(统计信息)选项查看更加详细的信息:

命令:ip -s link show eth0

IP2

RX和TX分别代表接收和发送,其中的统计信息包括:

table3

如果-s选项出现两次或多次,则会输出更加详细的错误统计信息:

IP3

● ip address add:添加一个新的IP地址

table4

● ip address delete:删除一个IP地址
该命令与ip address add的参数一致,其中只有设备名称是必需的参数,其它都是可选参数。如果没有给定除设备名之外的其它参数,命令就会删除这个设备的第一个地址。

示例:设备ens36有两个IPv4地址,删除第二个IPv4地址 192.168.12.12/24

命令:ip address delete 192.168.12.12/24 dev ens36

IP4

● ip address show:显示IP地址

table5

输出格式如下,前两行和ip link show的输出是相同的,接着就是IPv4、IPv6、广播地址以及其它的地址属性;

IP5

● ip address flush:清除IP地址

该命令与ip address show的参数相同,唯一的区别是,如果不给定参数,它什么都不会做。

示例:删除当前接口上IPv4地址 10.1.1.1/30、10.1.1.5/30、10.1.1.9/30、10.1.1.13/30并输出详细信息;

命令:ip -s -s address flush to 10.0.0.0/8

IP6

● ip route add:新增路由条目该命令和ip route add的参数一致;

table6

● ip route delete:删除路由条目

示例:删除一条路由条目 10.1.1.0/24,下一跳是192.168.1.1;

命令:ip route delete 10.1.1.0/24 via 192.168.1.1

IP7

● ip route show:列出路由条目

table7

输出格式如下:

IP8

● ip route flush:清除路由表

该命令和 ip route show 的参数一致,只不过被操作的路由表不会被显示出来。它和 ip route show 命令唯一的区别是它们的缺省操作,ip route show 会显示出路由表 main 的所有条目,而 ip route flush 只会给出帮助信息,不对路由表进行任何操作。

示例: 删除路由表中的所有网关路由;

命令: ip -4 route flush scope global type unicast

● ip route get:获得单个路由条目的信息

这个命令的输出格式和 ip route show相同。
示例:获取目标地址为114.114.114.114的路由条目信息;

IP9

其它的OBJECTS,如neighbor、rule、mroute可通过命令man ip-neighbor、man ip-mroute、man ip-rule查看详细用法。

 

三、进程管理工具

1、htop

● 概述

htop是Linux系统下一个基于文本模式的、交互式的进程查看器,主要用于控制台或shell中,可以替代top,或者说是top的高级版。它有如下优点:

a. 快速查看关键性能统计数据,如CPU(多核布局)、内存/交换使用;

b. 可以横向或纵向滚动浏览进程列表,以查看所有的进程和完整的命令行;

c. 杀掉进程时可以直接选择而不需要输入进程号;

d. 通过鼠标操作条目;

e. 比top启动得更快。

● htop页面信息

htop

htop1

运行htop后左上角显示CPU、内存、交换区的使用情况,右边显示任务、负载和开机时间;

以上各项说明:

PID:进程的标识号;

USER:运行此进程的用户;

PRI:进程的优先级;

NI:进程的优先级别值,默认为0,可以进行调整;

VIRT:进程占用的虚拟内存值;

RES:进程占用的物理内存值;

SHR:进程占用的共享内存值;

S:进程的运行状况,R表示正在运行,S表示休眠、等待唤醒,Z表示僵死状态;

CPU%:该进程占用的CPU使用率;

MEM%:该进程占用的物理内存和总内存的百分比;

TIME+:该进程启动后占用的总的CPU时间;

Command:进程启动的启动命令名称。

● htop快捷键

htop2

F1:显示帮助信息;

htop3

F2:htop设定,Meters可以设置顶端的显示信息;Display options可以设置需要显示的内容;Colors可以设置界面的颜色;Columns可以增加或取消要显示的各项内容。

htop4

F3:搜索进程,在界面下按F3或直接输入”/”就可以直接进入搜索模式,是按照进程名进行搜索的。

htop5

F4:过滤器,相当于模糊查找,不区分大小写。在下方输入关键字进行过滤查找。

htop6

F5:以树形方式显示

htop7

F6:选择排序方式

htop8

F7, F8:调整进程nice值,F7是减小;F8是增大,nice值的范围是-20~19。这里将htop进程的nice值增大至15。

htop9

F9:杀死进程,选择某进程后,可以按F9杀死该进程。

2、vmstat

● 概述

vmstat命令可以显示进程队列、内存、交换空间、块I/O和CPU的活动信息;

● 命令格式

vmstat [options] [delay [count]]

● 常用选项

-n:只在开始时显示一次各字段名称;

-a:显示活跃和非活跃内存信息;

-m:显示/proc/slabinfo;

-s:显示内存相关统计信息;

-S:使用指定单位显示,默认单位是K;

● 使用示例:

每隔5秒显示一次信息,显示2次;

命令:vmstat 5 2

vmstat1

显示活跃和非活跃的内存信息;

命令:vmstat -a

vmstat2

以M为单位,显示内存相关统计信息;

命令:vmstat -s -S M

vmstat3

● vmstat的输出项说明

vmstat4

3. iostat

● 概述

iostat命令用于输出CPU和磁盘I/O相关的统计信息;

● 命令格式

iostat [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ] [ -j { ID | LABEL | PATH | UUID | … } ] [ [ -T ] -g group_name ] [ -p [ device [,…] | ALL ] ] [ device […] | ALL ] [ interval [ count ] ]

● 常用选项

-c:仅显示CPU统计信息;

-d:仅显示磁盘统计信息;

-k:以KB为单位显示每秒的磁盘请求数;

-m:以MB为单位显示每秒的磁盘请求数;

-p [ { device [,…] | ALL } ]:用于显示块设备及系统分区的统计信息;

-t:在输出数据时,打印搜集数据的时间;

-x:输出扩展信息;

● 使用示例:

每隔2秒以MB为单位显示一次sda及上面所有分区的统计信息,共输出3次;

命令:iostat -m -p sda 2 3

iostat2

每隔5秒显示磁盘统计信息;

命令:iostat -d 5

iostat1

每隔2秒显示一次sda的扩展统计信息,仅显示1次;

命令:iostat -x sda 2 1

iostat3

● avg-cpu部分的输出项说明

iostat4

● Device部分的输出项说明

iostat5

● Device部分扩展输出项说明

iostat6

4. glances

● 概述

glances 工具可以在用户的终端上实时显示重要的系统信息,并动态地对其进行更新。主要可以监控CPU、内存、磁盘、网络、消耗资源最多的进程等信息;

● 命令格式

glances [OPTIONS]

● 常用选项

-b:显示网络连接速度;

-B BIND_ADDRESS:绑定服务器端IP地址或者主机名称;

-c CLIENT:连接glances服务器;

-d:关闭磁盘I/O模块;

-e:显示传感器温度;

-f FILE:设置输出文件,格式是HTML或者CSV;

-m:关闭挂载的磁盘模块;

-n:关闭网络模块;

-p PORT:设置运行端口,默认是61209;

-P PASSWORD:设置客户端密码;

-s:设置glances运行模式为服务器;

-t SEC:设置屏幕刷新时间间隔,单位是秒,默认是2秒;

-h:显示帮助信息;

-V:显示版本信息;

● 提供给用户使用的快捷键

h:显示帮助信息;

q:离开程序退出;

c:按照CPU实时负载对进程排序;

m:按照内存使用情况对进行排序;

i:按照I/O使用情况对进行排序;

p:按照进程名称排序;

d:显示磁盘读写情况;

w:删除日志文件;

l:显示日志;

s:显示传感器信息;

f:显示系统信息;

● 显示glances工作界面

命令:glances

glances1

● 进程部分输出项说明

glances2

● glances web server

命令:pip install bottle

            glances -w

glances3

● glances输出csv表格

命令:glances –export-csv /tmp/glances.csv

glances4

 

四、bash编程

使用until和while分别实现192.168.10.0/24 网段内,地址是否能够ping通,若ping通则输出”success!”,若ping不通则输出”fail!”

bash1

bash2

bash3

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/102706

发表评论

登录后才能评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1823388528@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班