网络管理和进程管理
Posted xuluchuan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络管理和进程管理相关的知识,希望对你有一定的参考价值。
1、简述osi七层模型和TCP/IP五层模型
- OSI是iso组织规定的open system interconnection,开放系统互联协议
- 下层为上层提供服务
- 发送方从上层到下层封装
- 接收方从下层到上层解封装
- 第7层应用层:为应用程序提供服务,集成在应用程序中
- 第6层表示层:协商双方都支持的数据表示格式,集成在应用程序中
- 第5层会话层:应用程序之间建立连接会话,集成在操作系统中
- 第4层传输层:tcp/udp协议,利用端口号定位应用程序,1-65535,数据切片,封装段报头
- 第3层网络层:ipv4/ipv6协议,路由器利用ip地址唯一标识网络间node进行网络间数据路由转发,封装包报头
- 第2层数据链路层:Ethernet协议,交换机利用mac地址唯一标识网络内node进行网络内数据转发,封装数据帧头和帧尾。
- 第1层物理层:568B线序,规定接口尺寸,线缆尺寸,将数据帧转换为物理信号
- tcp/ip 有第1层物理层,对应osi 1,第2层为数据链路层,对应osi2,第3层网络层,第4层传输层,第5层应用层,对应osi5-7
2、简述iproute家族命令
iproute2家族命令
ip
ip link
- ip link set DEV down/up
- ip link show
- multicast on/off
- mtu NUMBER 设置mtu
- netns NSNAME 移动到名称空间
ip netns
- ip netns list 查看名称空间
- ip netns add 添加名称空间
- ip netns del 删除名称空间
- ip netns exec NAME COMMAND 执行名称空间内的网络
ip addr
- ip addr add IFADDR dev IFACE label 接口别名
- ip addr delete 删除
- ip addr show 查看
- ip addr flush DEV IFACE 清空
ip route
- add TYPE/PREFIX via GW dev FACE src SOURCE_IP
- change replace
- delete 删除
- show
- get 一个单条目
- flush 清空
[[email protected] ~]# ip addr add 192.168.1.9/24 dev eth0 label eth0:0
[[email protected] ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:94:b7:d0 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.8/24 brd 192.168.1.255 scope global eth0
inet 192.168.1.9/24 scope global secondary eth0:0
inet6 fe80::a00:27ff:fe94:b7d0/64 scope link
valid_lft forever preferred_lft forever
[[email protected] ~]# ip addr delete 192.168.1.9/24 dev eth0
[[email protected] ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:94:b7:d0 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.8/24 brd 192.168.1.255 scope global eth0
inet6 fe80::a00:27ff:fe94:b7d0/64 scope link
valid_lft forever preferred_lft forever
[[email protected] ~]# ip route add 192.168.1.7 via 192.168.1.9 dev eth0:0
[[email protected] ~]# ip route del 192.168.1.7
[[email protected] ~]# ip route
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.8
169.254.0.0/16 dev eth0 scope link metric 1002
default via 192.168.1.1 dev eth0
ss
- 选项与netstat相同
- 状态过滤 :1.state 2.
( dport = :22 )
[[email protected] ~]# ss -np state "listening"
Recv-Q Send-Q Local Address:Port Peer Address:Port
0 128 192.168.1.8:22 *:* users:(("sshd",1347,3))
0 100 ::1:25 :::* users:(("master",1426,13))
0 100 127.0.0.1:25 *:* users:(("master",1426,12))
[[email protected] ~]# ss -np state "established"
Recv-Q Send-Q Local Address:Port Peer Address:Port
0 64 192.168.1.8:22 192.168.1.2:54516 users:(("sshd",1581,3))
[[email protected] ~]# ss -tunlp
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 192.168.1.8:22 *:* users:(("sshd",1347,3))
tcp LISTEN 0 100 ::1:25 :::* users:(("master",1426,13))
tcp LISTEN 0 100 127.0.0.1:25 *:* users:(("master",1426,12))
[[email protected] ~]# ss -tunap
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 192.168.1.8:22 *:* users:(("sshd",1347,3))
tcp LISTEN 0 100 ::1:25 :::* users:(("master",1426,13))
tcp LISTEN 0 100 127.0.0.1:25 *:* users:(("master",1426,12))
tcp ESTAB 0 64 192.168.1.8:22 192.168.1.2:54516 users:(("sshd",1581,3))
[[email protected] ~]# ss -tunp
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp ESTAB 0 240 192.168.1.8:22 192.168.1.2:54516 users:(("sshd",1581,3))
[[email protected] ~]# ss -tunap ‘( sport = :22 )‘
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 192.168.1.8:22 *:* users:(("sshd",1347,3))
tcp ESTAB 0 64 192.168.1.8:22 192.168.1.2:54516 users:(("sshd",1581,3))
3、详细说明进行管理工具htop、vmstat等相关命令,并举例
htop
- top的升级版
- l :lsof 跟踪进程打开的文件列表
- s:strace 跟踪系统调用
- t:层级关系
- a:affinity cpu亲和力,绑定程序运行的cpu核心
vmstat
- vmstat 2 3 :间隔秒数,运行次数
[[email protected] ~]# vmstat 1 10
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 355264 2076 87016 0 0 41 3 43 42 0 0 99 1 0
0 0 0 355264 2076 87016 0 0 0 0 70 60 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 62 57 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 56 51 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 69 61 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 61 50 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 2 75 68 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 64 50 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 90 66 0 0 100 0 0
0 0 0 355240 2076 87016 0 0 0 0 59 52 0 0 100 0 0
- procs
- r:等待运行的队列长度
- b:处于不可中断睡眠态被阻塞的任务队列长度
- memory
- swap
- free
- buffer
- cache
- swap
- si:数据换入swap的速率,kb/s
- so:数据换出swap的速率,kb/s
- io
- bi:从块设备读入到内存的速率
- bo:从内存写入到块设备的速率
- system
- in:interrupt中断速率
- cs:context switch 上下文切换速率
- cpu
- us
- sy
- id
- wa
- st
- vmstat -s 显示内存详细信息
4、使用until和while分别实现192.168.0.0/24
网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"
[[email protected] ~]# cat pingwhile.sh
#!/bin/bash
# description: 测试192.168.0.0/24网段是否能ping通
# author: xuluchuan
# version: 1.0
# date: 20180623
declare -i i=1
while [ $i -le 254 ]; do
ip="192.168.0.$i"
ping -c 3 -w 3 -W 3 $ip &> /dev/null
if [ $? -eq 0 ]; then
echo "ping $ip successful"
else
echo "ping $ip fail"
fi
let i++
done
[[email protected] ~]# cat pinguntil.sh
#!/bin/bash
# description: 测试192.168.0.0/24网段是否能ping通
# author: xuluchuan
# version: 1.0
# date: 20180623
declare -i i=1
until [ $i -gt 254 ]; do
ip="192.168.0.$i"
ping -c 3 -w 3 -W 3 $ip &> /dev/null
if [ $? -eq 0 ]; then
echo "ping $ip successful"
else
echo "ping $ip fail"
fi
let i++
done
以上是关于网络管理和进程管理的主要内容,如果未能解决你的问题,请参考以下文章