linux网络协议及系统常见命令

OSI七层模型:

  • OSIosi七层模型和TCP/IP五层模型:linux网络协议及系统常见命令

    • 物理层(Physical Layer):确保数据可以在各种物理媒体上传输。为上层协议提供了传输数据的物理媒体,本层传输bit流。
    • 数据链路层(Data Link Layer):建立逻辑连接。本层的功能:物理地址寻址、数据的成帧(将bit流封装成帧)、流量控制、数据的检错与重发等。
    • 网络层(Network Layer):对子网间的数据包进行路线选择,还可实现拥塞控制、网际互连等功能,本层的数据单位被称为数据包。
    • 传输层:定义传输数据的协议端口号、流控和差错校验。本层的数据单位被称为数据段。
    • 会话层:建立、管理、终止会话。本层还利用在数据中插入校验点来实现数据的同步,访问验证和会话管理在内的建立和维护应用之间通信的机制。
    • 表示层:本层主要解决用户信息的语法表示问题,即提供格式化的表示和转换数据服务。数据的压缩和解压缩, 加密和解密等工作都由本层负责。
    • 应用层:本层层为操作系统或网络应用程序提供访问网络服务的接口。

iproute家族命令:

  • ip 命令:

    • 格式: ip [ OPTIONS ] OBJECT { COMMAND | help }

        OBJECT := { link | addr | route | netns }
      • link:网络设备配置

          ip link set DEV up/down:启用/禁用接口
          ip link set DEV multicast on/off:启用/禁用多播功能
          ip link set DEV name NAME:重命名接口(先down再重命名)
          ip link set DEV mtu #:设定mtu大小,默认1500字节
          ip link set DEV txqlen|txqueuelen #:设定发送队列长度
          ip link set DEV netns PID:ns为namespace,内核支持名称空间,用于将接口移动到指定的网络名称空间
          ip link show:显示设备属性
          ip link help:显示简要帮助
      • nentns:网络名称空间

          ip netns add NAME:创建指定的netns
          ip netns del NAME:删除指定的netns
          ip netns list:列出所有netns
          ip netns exec NETSPACE COMMAND:在指定的netns中执行命令
      • addr:协议地址管理

          ip addr add ADDRESS dev IFACE:添加新的协议地址
          ip addr del ADDRESS dev IFACE:删除协议地址
          ip addr list IFACE:显示指定接口的协议地址
          ip addr flush [dev IFACE]:清空[指定接口]协议地址
  • ip route命令:

    • ip route add:添加路由

        格式:ip route add TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP]
            dev NAME:设置由哪个接口出去;
            via ADDRESS:下一跳地址(gw);
            src ADDRESS:配置一个接口有多个地址时,要指明源地址;
      • ip route list:查看路由表
      • ip route change:更改路由
      • ip route replace:替换路由
      • ip route delete:删除路由条目
      • ip route flush:清空路由表
      • ip route get:获取指定路由条目

htop命令:交互式进程查看器

  • 格式:

      htop [OPTIONS]
  • 选项:-d # :指定延时间隔

        -u USERNAME:仅显示指定用户的进程
        -s :以指定字段进行排序
  • 交互界面命令:

      l:显示选定进程打开的文件列表,能跟踪一个进程所打开的文件;
      s:跟踪选定的进程所发起的系统调用;
      t或F5:以层级关系显示各进程状态,树状结构显示进程父子关系;
      a:将选定的进程绑定在指定的CPU核心,设置进程在哪颗CPU上运行(affinity);
      F2:设定显示格式、显示方式等 ;
      u:显示用所有户进程;
      H:隐藏/显示用户线程threads;
      K:隐藏/显示内核线程;
      F:使用光标选择进程;
      P/M/T:根据CPU%,MEM%,TIME排序;
      c:标记进程和子进程;
      Esc:返回主界面;

vmstat命令:

  • 格式:vmstat [options] [delay [count]]

    • 显示结果字段:

      • procs:进程段

          r:处于等待运行的进程的个数;就是cpu上等待运行的任务的队列长度;是实时的;
          b:处于不可中断睡眠态的进程个数;被阻塞的任务队列的长度;
      • memory:内存段

          swpd:交换内存的使用总量;
          free:空闲的物理内存总量;
          buff(缓冲):用于buffer(缓冲)的内存总量;
          cache(缓存):用户cache(缓存)的内存总量;都是为了衔接两系统间速度不匹配而设定的;
      • swap:交换分区段

          si:swap in,数据进入swap中的数据速率(kb/s),换进;是速率,每秒钟多少,是平均值;
          so:swap out,数据离开swap的数据速率(kb/s),换出;
              判断物理内存很少时:交换内存使用、
      • io:块级IO

          bi:块级别的,从块设备读入数据到系统(内存)的速率(kb/s);
          bo:保存数据至块设备的速率(kb/s);
      • system:系统段

          in:interrupts,中断产生的速率(每秒钟多少次);
              尤其网络服务服务器,任何数据报文到达当前主机时都会发生(硬件级别)硬中断;
              任何磁盘IO也都会发生中断;
              应用程序运行时,从用户模式转为内核模式时(发生系统调用),也会发生软中断;
          cs:context switch,进程上下文切换的速率;
      • cpu:cpu段

          us:user space,用户空间程序占用cpu百分比;
          sy:system,系统调用:
          id:idle,空闲;
          wa:wait,等待;
          st:stolen,被虚拟化技术偷走的;

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

  • until:

linux网络协议及系统常见命令

  • while:

linux网络协议及系统常见命令

 

原创文章,作者:清晰,如若转载,请注明出处:http://www.178linux.com/124450

联系我们

400-080-6560

在线咨询

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

QR code