zoukankan      html  css  js  c++  java
  • 第六周

    1、100.0.0.16/28 对应网段的网关地址、广播地址、可分配IP地址范围

    28位掩码,掩码为255.255.255.240,前28位表示网络地址,后四位表示可分配的主机,所以可分配的IP地址范围为100.0.0.17到100.0.0.30,广播地址为100.0.0.31,网关为100.0.0.16。

    2、使用man手册学习tcpdump的使用

    tcpdump是用来抓取网络包内容描述信息的工具,在抓包结束后,会报告三个count数据:
    
    captured:tcpdump接收并处理的包数量。
    received by filter:被filter expression匹配到的包数量。
    dropped by kernel:缓冲区满后,被内核丢弃的包数量(取决于系统会不会通知tcpdump)。
    用法:tcpdump [options] [expression]
    选项:
    -A:以ASCII编码显示包内容,对于抓取web页面非常友好。
    -B cuffer_size:设置操作系统的缓冲区大小。
    -c count:指定最多抓取多少个包,默认会一直抓取。
    -C file_size:配置-w使用,文件超过file_size之后,自动滚动,原文件名加上数字前缀,从1开始。file_size单位是mb,是整数单位(1000 * 1000 bytes),不是计算机单位(1024 * 1024 bytes)。
    -d:将可读性强的抓包代码转换成标准格式。
    -dd:将可读性强的抓包代码转换成C语言风格的代码段。
    -D:列出当前系统可用于抓包的网络接口和序号。
    -e:显示链路层的头信息。
    -E:使用spi@ipaddr algo:secret来解密IPsec ESP包。可用算法:des-cbc, 3des-cbc, blowfish-cbc, rc3-cbc, cast128-cbc, none,默认为des-cbc。
    -f:显示外部ipv4地址时,使用数字格式,而不是使用名称
    -F file:从文件中读取filter expression,忽略命令行中的filter expression。
    -G rotate_seconds:滚动输出文件的时间间隔,单位秒。每一次滚动的文件,会添加后缀,格式为strftime(3)生成的格式。如果同时指定-C选项,文件名格式采取-C的格式。
    -i:指定监听的网络接口(可用-D选项查看可用接口)。如果不指定,会默认选择序号最小的非本地回环接口。如果指定any接口,会攫取所有接口的包,但无法开启混杂模式。
    -I:进入监视模式(只针对wifi设备)。使用-I后,指定的接口不能再与网络通信。
    -j tstamp_type:修改时间戳格式。
    -J:列出接口支持的时间戳格式。
    --time-stamp-precision=tstamp_precision:指定时间戳的精度,具体精度依赖于平台和硬件。可用单位为micro和nano,默认是micro。
    -K:不验证IP、TCP、UDP的校验和。
    -l:将结果输出到标准输出(默认)。
    -L:列出可用的数据链接层的类型。
    m module:从module文件中加载SMI MIB module,可指定多个。
    -M secret:如果tcp包中指定了TCP-MD5摘要,使用secret进行校验。
    -n:以数字方式显示主机地址。
    -nn:以数字方式显示端口号。
    -N:不显示域名。
    -O:不优化packet-matching。
    -p:禁用混杂模式。
    -Q/-P in|out|inout:指定捕捉哪个流向的包。
    -q:只输出较少的协议信息。
    -r file:从文件中读取包,可用-指明从标准输入中读取。
    -S:输出TCP序号的绝对值。
    -s:设置抓取包的长度,0代表默认值65536bytes。
    -T type:使用指定的type解析包,可用的类型为aodv、cnfp、rpc、rtp、rtcp、snmp、tftp、vat、wb。
    -t:不输出时间戳。
    -tt:输出未格式化的时间戳。
    -ttt:输出较上一行的相对时间戳。
    -tttt:输出默认格式的时间戳。
    -ttttt:输出较第一行的相对时间戳。
    -u:输出未加密的NFS句柄。
    -U:配合w使用,写入文件时,立即写入,不使用缓冲区。
    -v:输出详细信息。
    -vv:更详细。
    -vvv:更更详细。
    -w file:将结果写入文件,而不是打印到标准输出。
    -W filecount:指定滚动文件的最大数量,配合-C使用时,如果超过数量,将从头开始命名文件,之前的文件会被覆盖;配合-G使用时,如果超过数量,将退出。
    -x:打印每个包的头部信息,并以16进制格式打印包数据。
    -xx:在-x基础上,以16进制打印链路层头部。
    -y dataliktype:设置datalinktype。
    -z postrotate-command:配合-C或-G使用,对指定文件运行command,比如使用-z gzip会用gzip压缩文件。
    -Z user:使用指定用户的身份运行。
    expression filter:
    type:指定捕获什么类型的网络包。
    host:指定主机,默认值;如host foo。
    net:指定网段;如net 128.3。
    port:指定端口;如port 22。
    portrange:指定端口范围;如portrange 6000-6008。
    dir:指定捕获哪个流向的数据包。
    src:捕获从src流入的包;如src foo。
    dst:捕获流向dst的包;如dst net 128.3。
    src or dst:捕获从src流入或流向dst的包;如src or dst port ftp-data。
    src and dst:捕获从src流向dst的包。
    proto:指定捕获哪种协议的包,不指定默认捕获所有协议的包。
    ether
    fddi
    tr
    wlan
    ip
    ip6
    arp
    rarp
    decnet
    tcp
    udp
    and,or,not:条件组合。
    示例:
    抓取来自magedu的包:tcpdump host magedu.com。
    

    3、详细叙述僵尸进程产生的原因以及危害

    子进程退出后,还没有来得及被父进程清理,或父进程没有调用wait或waitpid等待子进程结束,也没有显式忽略SIGCHLD信号,此子进程即成为僵尸进程;如果父进程退出,僵局进程会被init进程接管,清理其进程信息后,杀死僵尸进程;但如果父进程一直不退出(比如服务进程,httpd,nginx等),僵尸进程就一直存在;
    僵尸进程虽然不会被调度执行,但它依然占据一个进程号,也在进程表中占据一行资源,如果僵尸进程过多,会造成资源大量浪费,甚至造成系统崩溃。

    4、详细说明vmstat输出结果的含义

    • procs:进程相关信息。
      • r:运行中或等待运行的进程量。
      • b:被 blocked 的进程数, 正在等待 IO 请求。
    • memory:内存相关信息。
      • swpd:虚拟内存使用量。
      • free:物理内存剩余量。
      • buff:用于buffer的内存量。
      • cache:用于cache的内存量。
    • swap:交换分区信息。
      • si:从磁盘换进的量(kb/s)。
      • so:换出到磁盘的量(kb/s)。
    • io:io相关信息。
      • bi:从块设备读入的量(blocks/s)。
      • bo:写入到块设备的量(blocks/s)。
    • system:内核相关信息。
      • in:每秒产生的中断数量
      • cs:每秒的上下文切换数量。
    • cpu:cpu时间相关信息。
      • us:用户空间占用cpu的时间百分比。
      • sy:内核空间占用cpu的时间百分比。
      • id:空闲时间百分比(2.5.41之前,还包含等待io的时间)。
      • wa:等待io的时间百分比(2.5.41之前,被包含在id时间里)。
      • st:被虚拟机偷走的时间(2.6.11之后才有)
  • 相关阅读:
    openlayers5-webpack 入门开发系列一初探篇(附源码下载)
    leaflet-webpack 入门开发系列二加载不同在线地图切换显示(附源码下载)
    Cesium-空间分析之通视分析(附源码下载)
    Geoserver2.15.1 配置自带 GeoWebCache 插件发布 ArcGIS Server 瓦片(附配置好的 Geoserver2.15.1 下载)
    leaflet-webpack 入门开发系列一初探篇(附源码下载)
    maven学习(上)- 基本入门用法
    Java面试11|Maven与Git
    必须学会git和maven
    Git 安装和使用教程
    用git,clone依赖的库
  • 原文地址:https://www.cnblogs.com/linux-timke/p/10923076.html
Copyright © 2011-2022 走看看