目录

一、netstat命令

输出介绍

常用命令参数

用法:

二、ss命令

常用命令参数

三、跟踪数据包命令

四、域名解析

设置主机DNS地址的三种方式


一、netstat命令

Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

输出介绍

netstat的输出结果可以分为两个部分

1、Active Internet connections 有源TCP连接,其中"Recv-Q"和"Send-Q"指接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。

2、Active UNIX domain sockets 有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。

Proto:显示连接使用的协议。

RefCnt:表示连接到本套接口上的进程号。

Types:显示套接口的类型。

State:显示套接口当前的状态。

Path:表示连接到套接口的其它进程使用的路径名。

常用命令参数

-n          | 以数字的形式显示相关的主机地址、端口等信息                   |

-r          | 显示路由表信息                                               |

-a          | 显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口) |

-l          | 显示处于监听(Listening)状态的网络连接及端口信息。          |

-t          | 查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息。 |

-u          | 显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息。 |

-p          | 显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限

用法

①通常使用“-anpt”或“-anpu”组合选项,以数字形式显示当前系统中所有的 TCP 和UDP连接信息,同时显示对应的进程信息

②配合管道符grep过滤出特定的记录

[root@ky17 bao]# netstat -anpt |grep sshd         查看sshd端口的网络连接状态
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      8970/sshd
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      9675/sshd: bao@pts/
tcp        0     52 192.168.247.17:22       192.168.247.1:56584     ESTABLISHED 9673/sshd: bao [pri
tcp6       0      0 :::22                   :::*                    LISTEN      8970/sshd
tcp6       0      0 ::1:6010                :::*                    LISTEN      9675/sshd: bao@pts/
[root@ky17 bao]# netstat -ant |wc -l        直接统计tcp数量监听的数量
16

二、ss命令

ss 是 Socket Statistics 的缩写,也可以查看网络的状态。ss 命令可以用来获取 socket 统计信息,它显示的内容和 netstat 类似。但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快。当服务器的 socket 连接数量变得非常大时,无论是使用 netstat 命令还是直接 cat /proc/net/tcp,执行速度都会很慢。ss 命令利用到了 TCP 协议栈中 tcp_diag。tcp_diag 是一个用于分析统计的模块,可以获得 Linux 内核中第一手的信息,因此 ss 命令的性能会好很多。

套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。网络套接字是IP地址与端口的组合。

Socket(套接字)可以看成是两个网络应用程序进行通信时,各自通信连接中的端点,这是一个逻辑上的概念。它是网络环境中进程间通信的API(应用程序编程接口),也是可以被命名和寻址的通信端点,使用中的每一个套接字都有其类型和一个与之相连进程。

常用命令参数

-h:--help 通过该选项获取更多的使用帮助。 
-V:--version 显示软件的版本号。 
-t:--tcp 显示 TCP 协议的 sockets。 
-u:--udp 显示 UDP 协议的 sockets。 
-n:--numeric 不解析服务的名称,如 "22" 端口不会显示成 "ssh",只会显示22  。
-l:--listening 只显示处于监听状态的端口。  
-p:--processes 显示监听端口的进程。 
-a: --all 对 TCP 协议来说,既包含监听的端口,也包含建立的连接。 
-r: --resolve 把 IP 解释为域名,把端口号解释为协议名称。
-o 选项可用于显示计时器信息

-w 用于字符串精确匹配

[root@ky17 bao]# ss -tn | grep -w 22          查看22端口的连接状态
ESTAB      0      52     192.168.247.17:22                 192.168.247.1:61035     
[root@ky17 bao]# ss -tnl sport le 500          查看端口号小于500的端口信息
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN     0      128               *:111                           *:*
LISTEN     0      5      192.168.122.1:53                            *:*
LISTEN     0      128               *:22                            *:*
LISTEN     0      100       127.0.0.1:25                            *:*
LISTEN     0      128              :::111                          :::*
LISTEN     0      128              :::22                           :::*
LISTEN     0      100             ::1:25                           :::*
[root@ky17 bao]# ss -tnl sport ge 500           查看端口号大于500的端口信息
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN     0      128               *:6000                          *:*
LISTEN     0      128       127.0.0.1:631                           *:*
LISTEN     0      128       127.0.0.1:6010                          *:*
LISTEN     0      128              :::6000                         :::*
LISTEN     0      128             ::1:631                          :::*
LISTEN     0      128             ::1:6010                         :::*  

三、跟踪数据包命令

跟踪数据包的路由途径:traceroute
若服务器上没有 traceroute 命令,可通过 yum 方式安装 traceroute 软件包
traceroute 命令可以用于测试从当前主机到目的主机之间经过了哪些网络结点,并显示各中间结点的连接状态(响应时间)。对于无法响应的结点,连接状态将显示为“*”

traceroute + 目标IP

[root@ky17 bao]# traceroute 127.0.0.1
traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets1  localhost (127.0.0.1)  0.061 ms  0.009 ms  0.006 ms

四、域名解析

nslookup + DNS服务器地址 (如百度)

[root@ky17 bao]# nslookup www.baidu.com
Server:     8.8.8.8
Address:    8.8.8.8#53Non-authoritative answer:
www.baidu.com   canonical name = www.a.shifen.com.
www.a.shifen.com    canonical name = www.wshifen.com.
Name:   www.wshifen.com
Address: 103.235.46.39

设置主机DNS地址的三种方式

vi /etc/resolv.conf 
search localdomain 
nameserver 202.106.0.20 
nameserver 202.106.148.1
resolv.conf 文件中的“search localdomain”行用来设置默认的搜索域(域名扩展名)。 
例如,当访问主机“localhost”时,就相当于访问“localhost.localdomain”。
一行一个DNS,最多配置三个DNS

/etc/resolv.conf 文件中记录了本机默认使用的 DNS 服务器的地址信息,对该文件所做 的修改将会立刻生效。Linux 操作系统中最多可以指定 3 个(第 3 个以后的将被忽略)不同 的 DNS 服务器地址,优先使用第一个 DNS 服务器。

本地主机映射文件
文件中记录着一份主机名与 IP 地址的映射关系表,一般用来保存经常需要访问的主机的信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到再去向 DNS 服务器查询。

在/etc/hosts 文件中添加“119.75.218.70 www.baidu.com”的映射记录,则当访问网站 www.baidu.com 时,将会直接向 IP 地址 119.75.218.70 发送 Web 请求,省略了向 DNS

netstat命令和ss命令相关推荐

  1. 监听队列中linux方法ss -a,Linux命令:ss命令

    ss功能:用来显示套接字信息的,类似于netstat,可以显示更多的信息,用于替代netstat. ss常用选项 ss -t:tcp协议的连接 -u:udp协议的链接 -w:裸套接字相关 -x:uni ...

  2. linux命令:ss命令的介绍

    Linux系统中ss命令是 Socket Statistics 的缩写. ss 命令可以用来获取socket 统计信息,它显示的内容和 netstat 类似.但 ss 的优势在于它能够显示更多更详细的 ...

  3. 每天一个linux命令(44)--ss命令

    ss 是 socket statistics 的缩写.顾名思义,ss 命令可以用来获取socket 统计信息,它可以显示和netstat 类似的内容.但 ss 的优势在于它能够显示更多更详细的有关TC ...

  4. Linux网络状态工具ss命令操作详解

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  5. 【Linux】一步一步学Linux——ss命令(170)

    00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 ss命令用来显示处于活动状态的套接字信息.ss命令可以用来 ...

  6. ss命令,显示socket状态

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  7. Linux之ss命令

    [Linux常用命令速查手册]关注[入门小站],后台回复 「1001」 自取. ss是Socket Statistics的缩写.顾名思义,ss命令可以用来获取socket统计信息,它可以显示和nets ...

  8. linux网络分析命令:ss

    在linux的网络分析中,ss命令绝对是一个很有用的命令,本文简单介绍一些使用场景. 而且对比netstat命令,ss命令执行速度会更快. 因为netstat是遍历/proc下面每个PID目录,ss直 ...

  9. ss 命令查看连接数

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  10. linux中ss命令

    一.ss命令简介 ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容.但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效.s ...

最新文章

  1. 利用github-pages建立个人博客
  2. 快做这 15点,让 SpringBoot 启动更快一点!
  3. 【图像分割应用】医学图像分割小总结
  4. element vue 纵向滑动条_【求助】vue element搭建的后台,侧边栏如何设置滚动条?...
  5. 【深度学习】小目标检测、图像分类、图像识别等开源数据集汇总
  6. gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】
  7. 批处理延时启动的几个方法
  8. 硬盘安装以及磁盘分区和检测(笔记本R7000)
  9. etcd与mysql_etcd数据库备份与还原
  10. (六)Neo4j综合项目
  11. java se 9.0.4_jre 9下载(Java SE Runtime Environment)下载
  12. Scrapy 爬虫框架初体验三 —— 工程优化及其完善
  13. 基于RxJava2+Retrofit2简单易用的网络请求实现
  14. assertion failed:Path for IClasspathEntry must be absolute
  15. 迷宫问题c语言图形化,c语言写的迷宫问题
  16. msdn安装后怎么用_Win10不好用?安装官方版精简Win10后,运行比win7更快更流畅
  17. 微服务之Go-Micro(八)基于Gin框架的Http网关
  18. hadoop面试题汇总
  19. ZZULIOJ 1125: 上三角矩阵的判断,Java
  20. (转帖)ConcurrentHashMap实现原理(3)

热门文章

  1. Boost电路小信号建模分析
  2. linux 拼音输出繁体_解决rime仓颉拼音反查为繁体的问题
  3. ISP封了80和8080端口
  4. 绿米开关如何重置_绿米智能开关评测
  5. quot 成为通用计算机器 quot,汉语拼音:从读写工具到文化津梁
  6. 聊聊Hadoop DistCp的数据切分处理方式
  7. Python压缩文件夹
  8. JAVA_OPTS修改配置在哪里_JAVA_OPTS參數說明與配置
  9. 使用思维导图提高工作效率的秘诀:6种工作思维导图模板分享
  10. @Transaction注解详解