Alpine Linux 网络连接工具 - iproute2 / ip ss_alpine l2tp_唧唧歪歪的的博客-程序员宅基地

技术标签: docker  

Alpine Linux 实用工具 - iproute2 / ss

iproute2 安装

apk add iprout2

iproute2 命令 ss

Usage: ss [ OPTIONS ]
		       ss [ OPTIONS ] [ FILTER ]
		   -h, --help          this message
		   -V, --version       output version information
		   -n, --numeric       don't resolve service names
		   -r, --resolve       resolve host names
		   -a, --all           display all sockets
		   -l, --listening     display listening sockets
		   -o, --options       show timer information
		   -e, --extended      show detailed socket information
		   -m, --memory        show socket memory usage
		   -p, --processes     show process using socket
		   -i, --info          show internal TCP information
		       --tipcinfo      show internal tipc socket information
		   -s, --summary       show socket usage summary
		   -b, --bpf           show bpf filter socket information
		   -E, --events        continually display sockets as they are destroyed
		   -Z, --context       display process SELinux security contexts
		   -z, --contexts      display process and socket SELinux security contexts
		   -N, --net           switch to the specified network namespace name
		
		   -4, --ipv4          display only IP version 4 sockets
		   -6, --ipv6          display only IP version 6 sockets
		   -0, --packet        display PACKET sockets
		   -t, --tcp           display only TCP sockets
		   -S, --sctp          display only SCTP sockets
		   -u, --udp           display only UDP sockets
		   -d, --dccp          display only DCCP sockets
		   -w, --raw           display only RAW sockets
		   -x, --unix          display only Unix domain sockets
		       --tipc          display only TIPC sockets
		       --vsock         display only vsock sockets
		   -f, --family=FAMILY display sockets of type FAMILY
		       FAMILY := {
    inet|inet6|link|unix|netlink|vsock|tipc|help}
		
		   -K, --kill          forcibly close sockets, display what was closed
		   -H, --no-header     Suppress header line
		
		   -A, --query=QUERY, --socket=QUERY
		       QUERY := {
    all|inet|tcp|udp|raw|unix|unix_dgram|unix_stream|unix_seqpacket|packet|netlink|vsock_stream|vsock_dgram|tipc}[,QUERY]
		
		   -D, --diag=FILE     Dump raw information about TCP sockets to FILE
		   -F, --filter=FILE   read filter information from FILE
		       FILTER := [ state STATE-FILTER ] [ EXPRESSION ]
		       STATE-FILTER := {
    all|connected|synchronized|bucket|big|TCP-STATES}
		         TCP-STATES := {
    established|syn-sent|syn-recv|fin-wait-{
    1,2}|time-wait|closed|close-wait|last-ack|listening|closing}
		          connected := {
    established|syn-sent|syn-recv|fin-wait-{
    1,2}|time-wait|close-wait|last-ack|closing}
		       synchronized := {
    established|syn-recv|fin-wait-{
    1,2}|time-wait|close-wait|last-ack|closing}
		             bucket := {
    syn-recv|time-wait}
		                big := {
    established|syn-sent|fin-wait-{
    1,2}|closed|close-wait|last-ack|listening|closing}
  1. 查看网络链接统计
    命令:ss -s

    # ss -s
    Total: 8551
    TCP:   5458 (estab 30, closed 5417, orphaned 5, timewait 1883)
    
    Transport Total     IP        IPv6
    RAW       0         0         0
    UDP       1         1         0
    TCP       41        41        0
    INET      42        42        0
    FRAG      0         0         0
    

    在服务器产生大量链接的时候,可以通过这个命令宏观的查看链接状态。

  2. 查看打开的端口
    命令:ss -l

    # ss -l
    Netid            State              Recv-Q           Send-Q       Local Address:Port   Peer Address:Port
    nl               UNCONN             0                  0                  rtnl:9501              *                 
    nl               UNCONN             0                  0                  rtnl:kernel            *                                  
    nl               UNCONN             768                0               tcpdiag:kernel            *                                  
    nl               UNCONN             4352               0               tcpdiag:ss/1301           *
    nl               UNCONN             0                  0                  xfrm:kernel            *
    nl               UNCONN             0                  0             fiblookup:kernel            *
    nl               UNCONN             0                  0                   nft:kernel            *
    nl               UNCONN             0                  0                uevent:kernel            *
    nl               UNCONN             0                  0                  genl:kernel            *
    udp              UNCONN             0                  0            127.0.0.11:40876          0.0.0.0:*
    tcp              LISTEN             0                  1               0.0.0.0:30002          0.0.0.0:*
    tcp              LISTEN             0                  100             0.0.0.0:9080           0.0.0.0:*
    tcp              LISTEN             0                  50              0.0.0.0:5989           0.0.0.0:*
    tcp              LISTEN             0                  128          127.0.0.11:33670          0.0.0.0:*
    

    还可以使用 -pl参数,会列出每个端口使用的进程名、pid:

    users:(("java",pid=1,fd=4))
    

iproute2 命令 ip

Usage: ip [ OPTIONS ] OBJECT {
     COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := {
     link | address | addrlabel | route | rule | neigh | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | macsec | tcp_metrics | token | netconf | ila |
                   vrf | sr }
       OPTIONS := {
     -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                    -h[uman-readable] | -iec | -j[son] | -p[retty] |
                    -f[amily] {
     inet | inet6 | ipx | dnet | mpls | bridge | link } |
                    -4 | -6 | -I | -D | -M | -B | -0 |
                    -l[oops] {
     maximum-addr-flush-attempts } | -br[ief] |
                    -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
                    -rc[vbuf] [size] | -n[etns] name | -a[ll] | -c[olor]}
  1. 显示网卡和IP地址
    命令:ip link list

    # ip link lis
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    7058: eth0@if7059: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
    link/ether 02:42:ac:14:00:06 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    
  2. 显示路由
    命令:ip route show

    # ip route show
    default via 172.20.0.1 dev eth0
    172.20.0.0/16 dev eth0 proto kernel scope link src 172.20.0.6
    
  3. 显示ARP
    命令:ip neigh shwo

    # ip neigh show
    172.20.0.8 dev eth0 lladdr 02:42:ac:14:00:08 REACHABLE
    172.20.0.30 dev eth0 lladdr 02:42:ac:14:00:1e REACHABLE
    172.20.0.5 dev eth0 lladdr 02:42:ac:14:00:05 REACHABLE
    172.20.0.27 dev eth0 lladdr 02:42:ac:14:00:1b REACHABLE
    172.20.0.2 dev eth0 lladdr 02:42:ac:14:00:02 REACHABLE
    172.20.0.16 dev eth0 lladdr 02:42:ac:14:00:10 REACHABLE
    172.20.0.9 dev eth0 lladdr 02:42:ac:14:00:09 REACHABLE
    172.20.0.31 dev eth0 lladdr 02:42:ac:14:00:1f REACHABLE
    172.20.0.20 dev eth0 lladdr 02:42:ac:14:00:14 REACHABLE
    172.20.0.13 dev eth0 lladdr 02:42:ac:14:00:0d REACHABLE
    172.20.0.3 dev eth0 lladdr 02:42:ac:14:00:03 REACHABLE
    172.20.0.17 dev eth0 lladdr 02:42:ac:14:00:11 REACHABLE
    172.20.0.7 dev eth0 lladdr 02:42:ac:14:00:07 REACHABLE
    172.20.0.21 dev eth0 lladdr 02:42:ac:14:00:15 REACHABLE
    172.20.0.14 dev eth0 lladdr 02:42:ac:14:00:0e REACHABLE
    172.20.0.28 dev eth0 lladdr 02:42:ac:14:00:1c REACHABLE
    172.20.0.18 dev eth0 lladdr 02:42:ac:14:00:12 REACHABLE
    172.20.0.11 dev eth0 lladdr 02:42:ac:14:00:0b REACHABLE
    172.20.0.25 dev eth0 lladdr 02:42:ac:14:00:19 REACHABLE
    172.20.0.22 dev eth0 lladdr 02:42:ac:14:00:16 REACHABLE
    172.20.0.15 dev eth0 lladdr 02:42:ac:14:00:0f REACHABLE
    172.20.0.29 dev eth0 lladdr 02:42:ac:14:00:1d REACHABLE
    172.20.0.32 dev eth0 lladdr 02:42:ac:14:00:20 REACHABLE
    172.20.0.4 dev eth0 lladdr 02:42:ac:14:00:04 REACHABLE
    172.20.0.1 dev eth0 lladdr 02:42:a3:cf:8b:1f REACHABLE
    172.20.0.23 dev eth0 lladdr 02:42:ac:14:00:17 REACHABLE
    
  4. Rules
    命令:ip rule list

    # ip rule list
    0:      from all lookup local
    32766:  from all lookup main
    32767:  from all lookup default
    
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_23146469/article/details/89963264

智能推荐

存储器管理-程序员宅基地

存储器即主存、内存(Memory),分为两大部分:系统区:供操作系统使用用户区:划分为一个或多个区域,供用户进程使用。存储器管理的主要目标是为用户提供方便、安全和充分大的存储器。1、存储器管理的功能存储空间的分配和回收:地址变换:将逻辑地址变换为物理地址存储保护:防止因用户程序错误破坏系统或其他用户,防止程序之间的相互干扰存储扩充:在逻辑上为用户提供一个比实际内存..._存储器管理

allTypes_log4j 总结_${alltypes}什么意思-程序员宅基地

git地址:https://github.com/wei198621/log4j_allTypes学习文章:https://blog.csdn.net/qq_34294121/article/details/100111995四种方式对比图log4j log4j_slf4j log4j2 log4j2_slf4j logback _${alltypes}什么意思

spring data jpa @Query注解中delete语句报错 : @Modifying注解的使用_modifying 数据删除不掉的原因-程序员宅基地

spring data jpa @Query注解中delete语句报错项目中需要删除掉表中的一些数据@Query("delete from EngineerServices es where es.engineerId = ?1")int deleteByEgId(String engineerId);但是提示了错误org.hibernate.hql.QueryExecutionRequ_modifying 数据删除不掉的原因

TF/04_Support_Vector_Machines/06_Implementing_Multiclass_SVMs_multiclass svms-程序员宅基地

Implementing Multiclass SVMsHere, we implement a 1-vs-all voting method for a multiclass SVM. We attempt to separate the three Iris flower classes with TensorFlow.# 06_multiclass_svm.py# Multi-class_multiclass svms

2020杭电多校第二场_2021 杭电多校第二场 1004-程序员宅基地

1001.Total Eclipse并查集维护求和#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N=100010;int d[N],f[N],fa[N],vis[N],num[N];vector<int> g[N];int cmp(int a,int b){ return d[a]>d[b];}int find(int x){ i_2021 杭电多校第二场 1004

【CSS特效扫盲】精选40种纯CSS特效应用实例,肝了10个晚上整理纯CSS特效(上)(附源码下载)_css 特效-程序员宅基地

40种精选CSS特效,纯CSS特效汇总,前端页面好看的CSS特效,web高级的CSS特效CSS阴影特效之文字立体阴影CSS阴影特效之内切角CSS阴影特效之条纹字CSS阴影特效之浮雕阴影CSS阴影特效之霓虹灯效果CSS阴影效果之抖音logo效果CSS滤镜特效CSS滤镜之文字旋转效果CSS滤镜之loading加载中小球穿梭效果CSS滤镜之幽灵动画_css 特效

随便推点

java源码转换e4a_E4A核心代码生成类库工具-程序员宅基地

请勿问工具收费不收费,工具免费使用!(灵感来自易如意,所以算回馈吧!)在使用该工具之前,请先看一下易如意出的教程:【易安卓E4A】类库开发速成课,不需要java基础https://www.bilibili.com/video/BV1jt411u7ym?from=search&seid=3049252977607959681易如意出的教程共计三课:教程讲的是类库开发工具与易安卓配合生成类库!..._e4a 库怎么修改

Android开发日志3——解决 Android SDK下载和更新失败“Connection to https://dl-ssl.google.com refused”的问题-程序员宅基地

缘由:更新sdk,遇到了更新下载失败问题: Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xmlFetched Add-ons List successfullyFetching URL: https://dl-ssl.google.com/android/repository/rep

QGuiApplication::font(): no QGuiApplication instance and no application font set-程序员宅基地

深入的细节道理不多讲,问题出现在pyside2 使用qt调用matplotlib进行绘图。解决方法:把pyside2 的import 放在 matplotlib import 之前。即:from PySide2.QtWidgets import *from PySide2.QtGui import *from PySide2.QtCore import *from PySide2.QtUiTools import *from PySide2.QtCore import QObje._qguiapplication::font(): no qguiapplication instance and no application font

【Java】使用AOP进行异常处理与日志记录_java 系统抛异常了,aop就不会拦截了吗-程序员宅基地

背景最近在读《代码精进之路 从码农到工匠》,书中有讲到异常规范和日志规范,大致是下面这几点:自定义BusinessException和SystemException,用于区分业务异常和系统异常,业务异常应该是warn级别,系统异常才可以记error 异常日志监控:error级别即时报警,warn级别单位时间内数量超过预设阀值也要报警。由于监控报警所以日志等级要按照规范使用 异常要使用AOP统一处理,而不应该使try-catch代码散落在项目中的各处。使得代码的可读性和简洁性降低感觉说得很有道理_java 系统抛异常了,aop就不会拦截了吗

以太坊智能合约中随机数预测_block.number-程序员宅基地

一、前言作为首次币发行(ICO)的平台,以太坊已经获得了极大的普及。 但是,它不仅仅用于 ERC20 通证,轮盘,彩票和纸牌游戏都可以使用以太坊区块链实现。 与任何区块链实施一样,以太坊是不可逆的,去中心化的,透明公开的。 以太坊允许运行图灵完备程序,这些程序通常用 Solidity 编写,使其成为平台创始人所说的“世界超级计算机”。 对于计算机赌博来说,所有这些特征都是非常有益的,尤其是用户..._block.number

多线程中wait和sleep的区别_多线程watie和sleep有什么区别?-程序员宅基地

wait和sleep的区别wait()wait()是object中的方法,可让线程进行等待,假设线程A调用了某个对象的wait()方法,线程A就会释放该对象的锁,同时线程A就进入到了该对象的等待池中,进入到等待池中的线程不会去竞争该对象的锁。当wait()中不传参数时,jvm会默认会传一个参数0,表示永久阻塞,若传入参数,则表示在指定的时间内阻塞。wait()方法由于要释放锁,所以得写在..._多线程watie和sleep有什么区别?

推荐文章

热门文章

相关标签