zoukankan      html  css  js  c++  java
  • Linux netstat:查看网络状态

    netstat 主要用于网络监控,在进程管理方面也很重要。
    它的输出分为两大部分,分别是网络和系统自己的进程相关性部分。

    语法

    netstat [-atunlp]
    

    参数

    • -a 列出目前系统上所有的连接、监听、Socket数据;
    • -t 列出TCP网络数据包的数据;
    • -u 列出UDP网络数据包的数据;
    • -n 不列出进程的服务名称,以端口号来代替
    • -l 列出目前正在网络监听的服务
    • -p 列出该网络服务的进程 PID

    范例一

    netstat
    

    输出:

    Proto Recv-Q Send-Q Local Address           Foreign Address         State      
    tcp        0     36 iz2zeb0rftmzvuq8o8d:ssh 13.13.206.183.stat:4605 ESTABLISHED
    tcp        0      0 iz2zeb0rftmzvuq8o:36836 100.100.30.25:http      ESTABLISHED
    Active UNIX domain sockets (w/o servers)
    Proto RefCnt Flags       Type       State         I-Node   Path
    unix  2      [ ]         DGRAM                    9799     /run/systemd/shutdownd
    unix  2      [ ]         DGRAM                    6873     /run/systemd/notify
    unix  2      [ ]         DGRAM                    6875     /run/systemd/cgroups-agent
    unix  5      [ ]         DGRAM                    6895     /run/systemd/journal/socket
    unix  9      [ ]         DGRAM                    6897     /dev/log
    unix  3      [ ]         STREAM     CONNECTED     11580    /var/run/dbus/system_bus_socket
    

    上面的结果中,显示了两个部分,分别是网络连接以及系统上的socket程序相关性部分。
    先看网络连接部分:

    • Proto: 网络的数据包协议,主要分为TCP和UDP
    • Recv-Q:非由用户进程连接到此socket的复制的总字节数
    • Send-Q:非由远程主机传送过来的 acknowledged 总字节数
    • LocalAddress: 本地IP端口情况
    • ForeignAddress:远程主机的IP端口情况
    • State:连接状态,主要有建立(ESTABLISHED)及监听(LISTEN)

    除了网络连接之外,Linux系统上的进程是可以接收不同进程发送过来的信息,那就是scoket file。scoket file可以沟通两个进程之间的信息。上面的socket file的输出字段主要有:

    • Proto: 一般就是Unix
    • RefCnt:连接到此socket的进程数量
    • Flags:连接的标识
    • Type:socket访问的类型,主要有确认连接的STREAM和不需确认的DGRAM两种。
    • State:若为CONNECTED 表示多个进程之间已经连接建立。
    • Path:连接到此socket的相关程序的路径,或者相关数据输出的路径。

    范例二

    找出目前系统上已在监听的网络连接以及PID

    netstat -tlnp
    

    范例三

    查看某个端口的占用情况

    netstat -tunlp|grep 端口号
    
  • 相关阅读:
    Angular 双向数据绑定
    Angular 过滤器
    Angular 自定义指令传参
    润滑油 标号
    Oracle concat
    sqlldr load UTF8 error
    linux中shell变量$#,$@,$0,$1,$2的含义解释
    shell 执行结果赋给变量
    linux 如何显示一个文件的某几行(中间几行)
    linux shell date 用当天时间做备份文件名
  • 原文地址:https://www.cnblogs.com/jiaoran/p/14522221.html
Copyright © 2011-2022 走看看