美文网首页
OSI网络模型及管理工具

OSI网络模型及管理工具

作者: 佐岸的咖啡 | 来源:发表于2018-09-21 06:35 被阅读0次

    简述osi七层模型和TCP/IP五层模型

    OSI七层模型.png 网络模型对应说明.png
    应用层——Application(Layer 7)

    各种应用程序协议,如HTTP、FTP、SMTP、POP3等

    表示层——Presentation(Layer 6)

    信息的语法语义以及它们的关联,如加密解密、转换翻译、压缩解压缩

    会话层——Session(Layer 5)

    不同机器上的用户之间建立及管理会话

    传输层—— Transport(Layer 4)

    接受上一层的数据,在必要的时候对数据进行切割,并把数据交给网络层,且保证数据段有效到达对端

    网络层——Network(Layer 3)

    控制子网的运行,如逻辑编址、分组传输、路由选择

    数据链路层——Data Link(Layer 2)

    物理寻址,同时将原始比特流转变为罗技传输线路

    物理层——Physical(Layer 1)

    机械、电子、定时接口通信信道上的原始比特流传输


    简述iproute家族命令

    ip命令:

    show / manipulate routing, devices, policy routing and tunnels

    ip [ OPTIONS ] OBJECT { COMMAND | help }
    OBJECT := { link | addre| route | netns }       
    
    ip OBJECT:
    ip link: network device configuration  
    ip link set: 修改设备属性
          dev NAME(default): 指名要管理的设备,dev关键字可省略
          up 和 down:
          multicast on或off: 启用或禁用多播功能
          name NAME: 重命名接口
          mtu NUMBER: 设置MTU的大小,默认为1500;
          netns PID: ns为namespace,用于将接口移动到指定的网络名称空间;
    ip link show: 显示设备属性
    ip link help: 显示简要帮助信息
    ip netns: process network namespace management
    ip netns list: 列出所有的netns
    ip netns add NAME: 创建指定的netns
    ip netns del NAME: 删除指定的netns
    ip netns exec NAME COMMAND: 在指定的netns中运行命令
    
    ip addr add IFADDR dev IFACE(基本用法) 
          [label NAME]: 为额外添加的地址指名接口别名;
          [broadcast ADDRESS]: 广播地址;会根据IP和NETMASK计算得到,一般都无需配置;
          [scope SCOPE_VALUE]: 
                      global: 全局可用
                      link: 接口可用
                      host: 仅本机可用
    
    ip address delete - delete protocol address
    ip addr delete IFADDR dev IFACE
    ip address show - look at protocol addresses
    ip addr list [IFACE]: 显示接口的地址
    ip address flush - flush protocol addresses
    ip addr flush dev IFACE: 清空接口上所有的地址
    

    详细说明进行管理工具htop、vmstat等相关命令,并举例

    htop命令:

    • 选项:
      • -d #:指定延迟时间间隔
      • -u USERNAME: 仅显示指定用户的进程
      • -s COLUME: 以指定字段进行排序
    • 子命令:
      • l: 显示选定的进程打开的文件列表;
      • s: 跟踪选定的进程的系统调用;
      • t: 以层级关系显示各进程状态;
      • a: 将选定的进程绑定至某指定的cpu核心;

    vmstat命令:

    vmstat - Report virtual memory statistics
    vmstat [options] [delay [count]]

    • proc:
      • r: 等待运行的进程的个数;cpu上等待运行的队列长度;
      • b: 处于不可中断睡眠态的进程个数;被阻塞的任务队列的长度;
    • memory:
      • swpd: 交换内存使用总量;
      • free: 空闲的物理内存总量;
      • buffer: 用于buffer的内存总量;
      • cache: 用于cache的内存总量;
    • swap:
      • si: 数据进入swap中的数据速率(kb/s)
      • so: 数据离开swap中的数据速率(kb/s)
    • io:
      • bi: 从块设备读入数据到系统的速率(kb/s)
      • bo: 保存数据至块设备的速率(kb/s)
    • system:
      • in: interrupts,中断速率
      • cs: context switch,上下文切换的速率
    • cpu:
      • us: user space
      • sy: system
      • id: idle
      • wa: wait
      • st: stolen
    • 选项:
      • -s: 显示内存统计数据;

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

    #!/bin/bash
    #
    declare -i i=1
    while [ $i -le 254 ]; do
            if ping -c 1 -w 1 -W 1 192.168.0.$i &> /dev/null; then
                    echo "Ping 192.168.0.$i success!" 
            else
                    echo "Ping 192.168.0.$i fail!"  
            fi
            let i++
    done
    
    #!/bin/bash
    #
    declare -i i=1
    until [ $i -gt 254 ]; do
            if ping -c 1 -w 1 -W 1 192.168.0.$i &> /dev/null; then
                    echo "Ping 192.168.0.$i success!" 
            else
                    echo "Ping 192.168.0.$i fail!"  
            fi
            let i++
    done
    
    

    相关文章

      网友评论

          本文标题:OSI网络模型及管理工具

          本文链接:https://www.haomeiwen.com/subject/lgwonftx.html