服务器关闭udp协议命令,服务器后端必会(2)-Linux网络相关命令

本文最初发表于我的个人站点

1. netstat (show network status) 显示网络状态

使用: netstat [OPTION]

netstat

不带任何参数的情况下,默认输出如下

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 10.135.140.109:http ec2-52-221-254-177.ap:15672 SYN_RECV

tcp 0 40 10.135.140.109:opsec-uaa 171.212.208.223:51167 ESTABLISHED

tcp 0 0 10.135.140.109:43963 101.226.68.166:nsesrvr ESTABLISHED

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags Type State I-Node Path

unix 6 [ ] DGRAM 60962 /dev/log

unix 2 [ ] DGRAM 49689 @/org/kernel/udev/udevd

unix 2 [ ] DGRAM 18148696

unix 2 [ ] DGRAM 18143862

unix 3 [ ] STREAM CONNECTED 17474862 /usr/local/sa/agent/secubase/secu-tcs-agent-v5.unix

Active Internet connections (w/o servers)

正如字面的意思就是:正在活跃的英特网网络连接。也就是当前所有连接到本机器的所有连接状态 。

Proto

Recv-Q

Send-Q

Local Address

Foreign Address

State

协议类型

接收队列

发送队列

本地地址

外部地址

状态

协议类型: 这里会出现 UDP、TCP、SCTP、ICMP 和 IP 协议 , 最常见的应该就是TCP和UDP

接收队列: 一般都是0,表示没有堆积的数据包

发送队列: 一般都是0,表示没有堆积的数据包

本地地址: 一般是在内网的地址,也有可能看到localhost或者127.0.0.1

外部地址: 与外部建立连接的外部ip以及端口。

这里可以看到171.212.208.223这个地址的用户通过端口51167,与服务器的 http(80端口),opsec-uaa建立了连接

状态

CLOSED -- 初始(无连接)状态。

LISTEN -- 侦听状态,等待远程机器的连接请求。

SYN_SEND -- 在TCP三次握手期间,主动连接端发送了SYN包后,进入SYN_SEND状态,等待对方的ACK包。

SYN_RECV -- 在TCP三次握手期间,主动连接端收到SYN包后,进入SYN_RECV状态。

ESTABLISHED -- 完成TCP三次握手后,主动连接端进入。

ESTABLISHED -- 状态。此时,TCP连接已经建立,可以进行通信。

FIN_WAIT_1 -- 在TCP四次挥手时,主动关闭端发送FIN包后,进入FIN_WAIT_1状态。

FIN_WAIT_2 -- 在TCP四次挥手时,主动关闭端收到ACK包后,进入FIN_WAIT_2状态。

TIME_WAIT -- 在TCP四次挥手时,主动关闭端发送了ACK包之后,进入TIME_WAIT状态,等待最多MSL时间,让被动关闭端收到ACK包。

CLOSING -- 在TCP四次挥手期间,主动关闭端发送了FIN包后,没有收到对应的ACK包,却收到对方的FIN包,此时,进入CLOSING状态。

CLOSE_WAIT -- 在TCP四次挥手期间,被动关闭端收到FIN包后,进入CLOSE_WAIT状态。

LAST_ACK -- 在TCP四次挥手时,被动关闭端发送FIN包后,进入LAST_ACK状态,等待对方的ACK包。

Active UNIX domain sockets (w/o servers)

Unix系统上的一个IPC机制(InterProcess Communication -进程间通信),这里可以简单理解为进程间通信需要的数据管道,由于不用经过网络,所以程序之间通过这个数据管道交互时,不需要打包拆包、计算校验和、维护序号和应答等,关于IPC机制的简介,可以看这篇博客:《IPC 机制简介》,如果了解一点C的话,还可以看看这篇 《Linux下的IPC-UNIX Domain Socket》

| Proto | RefCnt | Flags | Type | State | I-Node | Path

| --- | --- | --- | --- | --- | ---

| 协议类型| 引用次数 | TODO |数据传输类型 | 连接的状态 | Linux中的文件标识号 | 使用的路径

协议类型: 这里可以看见只有unix,表示这是一个unix socket

引用次数: 被程序引用的次数,不同的程序或者同一个程序中可以使用同一个管道来交换数据。

Flags : 未查到,TODO

数据传输类型:

byte streams 字节流

datagram 数据包

连接的状态: 与上面网络Socket的状态相同

Linux中的文件标识号: Linux的Inode,可以看这篇博客了解 《Linux的inode的理解》

使用的路径: 顾名思义,就是这个管道使用的文件路径

netstat -a (all) 显示所有网络连接状态

[root@VM_140_109_centos ~]# netstat -a | more

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 *:http *:* LISTEN

tcp 0 0 *:opsec-uaa *:* LISTEN

tcp 0 0 localhost:smtp *:* LISTEN

tcp 0 0 *:terabase *:* LISTEN

tcp 0 0 10.135.140.109:http li1598-70.members.lin:39184 TIME_WAIT

tcp 0 0 10.135.140.109:43963 101.226.68.166:nsesrvr ESTABLISHED

tcp 0 40 10.135.140.109:opsec-uaa 251.78.70.125.broad.cd.:bcs ESTABLISHED

Active UNIX domain sockets (servers and established)

Proto RefCnt Flags Type State I-Node Path

unix 2 [ ACC ] STREAM LISTENING 60862 public/showq

unix 2 [ ACC ] STREAM LISTENING 60866 private/error

unix 2 [ ACC ] STREAM LISTENING 60870 private/retry

netstat -n 以数字形式代替符号形式的地址

[root@VM_140_109_centos ~]# netstat -n | more

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 10.135.140.109:43963 101.226.68.166:9988 ESTABLISHED

tcp 0 40 10.135.140.109:19191 125.70.78.251:4677 ESTABLISHED

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags Type State I-Node Path

unix 6 [ ] DGRAM 60962 /dev/log

unix 2 [ ] DGRAM 49689 @/org/kernel/udev/udevd

unix 2 [ ] DGRAM 18426269

[root@VM_140_109_centos ~]# netstat -na | more

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:19191 0.0.0.0:* LISTEN

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:4000 0.0.0.0:* LISTEN

tcp 0 0 10.135.140.109:43963 101.226.68.166:9988 ESTABLISHED

tcp 0 40 10.135.140.109:19191 125.70.78.251:4677 ESTABLISHED

Active UNIX domain sockets (servers and established)

Proto RefCnt Flags Type State I-Node Path

unix 2 [ ACC ] STREAM LISTENING 60862 public/showq

unix 2 [ ACC ] STREAM LISTENING 60866 private/error

unix 2 [ ACC ] STREAM LISTENING 60870 private/retry

unix 2 [ ACC ] STREAM LISTENING 60874 private/discard

unix 2 [ ACC ] STREAM LISTENING 60878 private/local

unix 2 [ ACC ] STREAM LISTENING 60882 private/virtual

netstat -p 程序的名字打印出来

[root@VM_140_109_centos ~]# netstat -p | more

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 10.135.140.109:41434 10.190.93.159:nsesrvr ESTABLISHED 4919/secu-tcs-agent

tcp 0 40 10.135.140.109:opsec-uaa 182.148.57.124:27584 ESTABLISHED 10865/sshd

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags Type State I-Node PID/Program name Path

unix 6 [ ] DGRAM 60962 4674/rsyslogd /dev/log

unix 2 [ ] DGRAM 49689 3680/udevd @/org/kernel/udev/udevd

unix 2 [ ] DGRAM 23386059 10865/sshd

unix 2 [ ] DGRAM 23382189 10037/pickup

unix 3 [ ] STREAM CONNECTED 20534979 4919/secu-tcs-agent /usr/local/sa/agent/secubase/secu-tcs-agent-v5.unix

unix 3 [ ] STREAM CONNECTED 20534978 1930/sap1005

unix 3 [ ] STREAM CONNECTED 20534977 4919/secu-tcs-agent /usr/local/sa/agent/secubase/secu-tcs-agent.unix

unix 3 [ ] STREAM CONNECTED 20534976 1930/sap1005

unix 3 [ ] STREAM CONNECTED 20489154 4919/secu-tcs-agent /usr/local/sa/agent/secubase/secu-tcs-agent.unix

unix 3 [ ] STREAM CONNECTED 20489153 24376/sap1004

unix 3 [ ] STREAM CONNECTED 17474862 4919/secu-tcs-agent /usr/local/sa/agent/secubase/secu-tcs-agent-v5.unix

unix 3 [ ] STREAM CONNECTED 17474861 30420/sap1009

netstat -l 只列出 Listening 状态的网络连接

[root@VM_140_109_centos ~]# netstat -l | more

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 *:http *:* LISTEN

tcp 0 0 *:opsec-uaa *:* LISTEN

tcp 0 0 localhost:smtp *:* LISTEN

tcp 0 0 *:terabase *:* LISTEN

Active UNIX domain sockets (only servers)

Proto RefCnt Flags Type State I-Node Path

unix 2 [ ACC ] STREAM LISTENING 60862 public/showq

unix 2 [ ACC ] STREAM LISTENING 60866 private/error

unix 2 [ ACC ] STREAM LISTENING 60870 private/retry

unix 2 [ ACC ] STREAM LISTENING 60874 private/discard

unix 2 [ ACC ] STREAM LISTENING 60878 private/local

unix 2 [ ACC ] STREAM LISTENING 60882 private/virtual

unix 2 [ ACC ] STREAM LISTENING 60886 private/lmtp

unix 2 [ ACC ] STREAM LISTENING 60890 private/anvil

unix 2 [ ACC ] STREAM LISTENING 60894 private/scache

netstat [--tcp|-t] 只列出tcp端口 [--udp|-u] 只列出udp端口

TCP

[root@VM_140_109_centos ~]# netstat -t

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 10.135.140.109:41434 10.190.93.159:nsesrvr ESTABLISHED

tcp 0 40 10.135.140.109:opsec-uaa 182.148.57.124:27584 ESTABLISHED

UDP

[root@VM_140_109_centos ~]# netstat -u

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State

可以看到这里没有udp的连接

netstat -s 显示每个协议的统计信息

[root@VM_140_109_centos ~]# netstat -s

Ip:

14150245 total packets received

2 with invalid addresses

0 forwarded

8 with unknown protocol

0 incoming packets discarded

11105122 incoming packets delivered

11088052 requests sent out

12 reassemblies required

5 packets reassembled ok

Icmp:

2012695 ICMP messages received

3621 input ICMP message failed.

ICMP input histogram:

destination unreachable: 4071

timeout in transit: 135

redirects: 6

echo requests: 2008442

echo replies: 39

timestamp request: 2

2212368 ICMP messages sent

0 ICMP messages failed

ICMP output histogram:

destination unreachable: 203924

echo replies: 2008442

timestamp replies: 2

IcmpMsg:

InType0: 39

InType3: 4071

InType5: 6

InType8: 2008442

InType11: 135

InType13: 2

OutType0: 2008442

OutType3: 203924

OutType14: 2

Tcp:

1852 active connections openings

20442 passive connection openings

5494 failed connection attempts

661 connection resets received

2 connections established

8820870 segments received

8805804 segments send out

15430 segments retransmited

63 bad segments received.

7878728 resets sent

Udp:

44596 packets received

226787 packets to unknown port received.

45 packet receive errors

54450 packets sent

UdpLite:

TcpExt:

359 invalid SYN cookies received

5486 resets received for embryonic SYN_RECV sockets

89 ICMP packets dropped because they were out-of-window

6570 TCP sockets finished time wait in fast timer

12 packets rejects in established connections because of timestamp

24366 delayed acks sent

29 delayed acks further delayed because of locked socket

Quick ack mode was activated 1867 times

590 packets directly queued to recvmsg prequeue.

14240 packets directly received from backlog

372729 packets directly received from prequeue

521641 packets header predicted

208 packets header predicted and directly queued to user

118812 acknowledgments not containing data received

255005 predicted acknowledgments

846 times recovered from packet loss due to SACK data

Detected reordering 2 times using FACK

Detected reordering 1 times using SACK

Detected reordering 22 times using time stamp

28 congestion windows fully recovered

86 congestion windows partially recovered using Hoe heuristic

TCPDSACKUndo: 37

253 congestion windows recovered after partial ack

2913 TCP data loss events

TCPLostRetransmit: 685

2 timeouts after reno fast retransmit

163 timeouts after SACK recovery

537 timeouts in loss state

4780 fast retransmits

460 forward retransmits

6083 retransmits in slow start

1742 other TCP timeouts

298 sack retransmits failed

1690 DSACKs sent for old packets

455 DSACKs received

2 DSACKs for out of order packets received

13 connections reset due to unexpected data

36 connections reset due to early user close

134 connections aborted due to timeout

TCPDSACKIgnoredOld: 1

TCPDSACKIgnoredNoUndo: 152

TCPSpuriousRTOs: 8

TCPSackShifted: 450

TCPSackMerged: 4580

TCPSackShiftFallback: 3187

TCPChallengeACK: 62

TCPSYNChallenge: 10

IpExt:

InMcastPkts: 3

InOctets: 1246493421

OutOctets: 759134784

InMcastOctets: 108

2. netstat 常用组合命令

2.1 找出指定程序正在使用的网络端口

netstat -anp | grep ssh (找到ssh使用的网路端口)

非root的账户,提示如下,需要root权限

wzy@wzt-dev2-PC:~$ netstat -anp | grep ssh

(Not all processes could be identified, non-owned process info

will not be shown, you would have to be root to see it all.)

切换root之后

root@wzt-dev2-PC:/home/wzy# netstat -anp | grep ssh

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 861/sshd

tcp 0 26556 192.168.0.187:22 192.168.0.174:59863 ESTABLISHED 10766/sshd: wzy [pr

tcp 0 0 192.168.0.187:22 192.168.0.115:57336 ESTABLISHED 12838/sshd: wzy [pr

tcp6 0 0 :::22 :::* LISTEN 861/sshd

unix 2 [ ] DGRAM 1137722 10766/sshd: wzy [pr

unix 3 [ ] STREAM CONNECTED 16016 861/sshd

unix 3 [ ] STREAM CONNECTED 1162258 12838/sshd: wzy [pr

unix 2 [ ] DGRAM 1162250 12838/sshd: wzy [pr

unix 3 [ ] STREAM CONNECTED 1137737 10766/sshd: wzy [pr

netstat -anp | grep mysqld (找到mysqld使用的网路端口)

root@wzt-dev2-PC:/home/wzy# netstat -anp | grep mysqld

tcp6 0 0 :::3306 :::* LISTEN 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:25408 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:25406 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:26278 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:25554 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:25832 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:21390 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:26336 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:25864 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:22198 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:26342 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:21350 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:25958 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:26024 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:19907 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.174:59848 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:26280 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:21352 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:20518 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:19904 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.174:59847 ESTABLISHED 2311/mysqld

tcp6 0 0 192.168.0.187:3306 192.168.0.187:19906 ESTABLISHED 2311/mysqld

unix 2 [ ACC ] STREAM LISTENING 23752 2311/mysqld /tmp/mysql.sock

2.1 找出指定端口的网络状态,打印出使用程序

netstat -anpl | grep :8088 (找到使用8088端口的程序)

root@wzt-dev2-PC:/home/wzy# netstat -anpl | grep :8088

tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 928/nginx.conf

这里可以看到nginx正在监听8088端口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值