Linux下网络命令
目录
- 需求1-查看本机是否存在22端口
- 解法1
- 解法2
- 解法3
- 需求2-查看其他主机是否存在22端口
- 解法1
- 解法2
- 解法3
- 需求3-查看TCP连接
- 解法1/2
- 需求4-统计80端口tcp连接次数
- 解法
- 需求5-查看总体网络速度
- 解法
- 需求6-查看进程流量
- 解法
- 需求7-dns
- 解法
- 需求8-traceroute到baidu
- 解法
- 需求9-查看路由
- 解法
需求1-查看本机是否存在22端口
解法1
ss -tunlp |grep 22ss 是一个用于检查套接字统计信息的命令,而 -tunlp 是它的几个选项的组合:
-t 表示显示 TCP 套接字
-u 表示显示 UDP 套接字
-n 表示直接使用 IP 地址,而不是尝试确定符号主机、端口或用户名
-l 表示仅显示监听状态的套接字
-p 表示显示监听端口的进程信息
解法2
netstat -tunlp | grep 22netstat 是一个网络统计工具,用于显示网络连接、路由表、接口统计等信息。
解法3
lsof -nPi :22lsof 是 "List Open Files" 的缩写,用于列出当前系统打开的文件。
-n:不解析 IP 地址,直接显示数字形式。
-P:不解析端口号,直接显示数字形式。
-i:显示打开的网络文件,即网络连接。
:22:指定要查找的端口号,这里是 22,通常用于 SSH 服务。
lsof -nPi :22 命令的作用是列出所有使用端口 22 的网络连接,不进行地址和端口的解析,直接显示它们的数字形式。
需求2-查看其他主机是否存在22端口
解法1
telnet 192.168.100.128 22
解法2
nc 192.168.100.128 22 一般用于shell脚本中,查看端口是否打开. 因为输出较少
nc 是 "netcat" 的缩写,它是一个用于网络通信的命令行工具,可以用于创建网络连接、监听网络上的数据流、发送数据到网络上等。
如果该主机的 SSH 服务正在端口 22 上监听,并且连接成功,netcat 将建立一个网络连接
解法3
nmap -p22 192.168.100.128nmap 是一个网络探索和安全扫描工具,它可以用来发现网络上的设备,检测开放的端口,确定运行在网络设备上的服务及其版本信息等
-p 可以指定一个范围端口,如1-100
IP 可以是范围,如192.168.100.0/24
需求3-查看TCP连接
解法1/2
ss -antnetstat -ant-a:显示所有套接字(包括监听和非监听的)。
需求4-统计80端口tcp连接次数
解法
#模拟连接
#ab工具需要yum安装httpd-tools
ab -n 1000000 -c 10 http://localhost/ &> /dev/null &
# ab:Apache Benchmark 工具的命令。
# -n 1000000:指定测试执行的请求数量,这里是 1000000 次请求。
# -c 10:指定并发执行请求的数量,这里是 10 个并发请求。
# http://localhost/:指定要测试的 URL,这里是本地服务器的根目录。
# &:将命令放在后台执行,这样命令会立即返回控制权给终端,不会阻塞当前的 shell 会话。
# >:重定向到 /dev/null 意味着丢弃所有的输出,不保存任何结果。#统计
ss -ant | awk 'NR>1&&$4~/:80$/{print $1}' | sort | uniq -c7 ESTAB2 FIN-WAIT-15 FIN-WAIT-22 LISTEN14102 TIME-WAIT
# ss -ant:显示所有 TCP (-t) 和 UDP (-a) 套接字,不解析服务名称(-n),并且只显示监听状态的套接字。
# awk 'NR>1&&$4~/:80$/{print $1}':使用 awk 处理 ss 命令的输出。这里 NR>1 表示跳过第一行(通常是标题行),$4~/:80$/ 是一个正则表达式,匹配第四列以 :80 结尾的行,这通常表示 HTTP 服务监听在端口 80 上。对于匹配的行,print $1 输出该行的第一列,即本地地址。
# sort:对 awk 的输出进行排序。
# uniq -c:对排序后的输出进行去重,并计算每个唯一项出现的次数。
需求5-查看总体网络速度
解法
#需要yum安装iftop软件包
iftop -nNPi eth0iftop 是一个实时带宽监控工具,它显示每个连接的网络子接口的数据流量。
-n:不解析 IP 地址为主机名,直接使用 IP 地址显示。
-N:不解析端口号为服务名称,直接使用端口号显示。
-P:不解析 IP 地址为主机名,并且也不解析 MAC 地址为设备名。
-i:指定监控的网络接口,这里是 eth0。
下图右侧三个数值,分别代表2s,10s,40s
需求6-查看进程流量
解法
#需要yum安装nethogs软件包
nethogs 网卡名#或者可以用
iftop+ss+ps
iftop找出端口+ss找出pid+ps过滤名字
需求7-dns
解法
#方法1
[root@ecm ~]# dig www.google.com; <<>> DiG 9.16.23 <<>> www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46352
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.google.com. IN A;; ANSWER SECTION:
www.google.com. 200 IN A 199.16.158.9;; Query time: 8 msec
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WHEN: Mon May 13 20:55:59 CST 2024
;; MSG SIZE rcvd: 59#方法2
[root@ecm ~]# host www.google.com
www.google.com has address 199.16.158.9
www.google.com has IPv6 address 2001::1#方法3
[root@ecm ~]# nslookup www.google.com
Server: 114.114.114.114
Address: 114.114.114.114#53Non-authoritative answer:
Name: www.google.com
Address: 31.13.94.10
Name: www.google.com
Address: 2001::1
需求8-traceroute到baidu
解法
traceroute -nI www.baidu.com
traceroute to www.baidu.com (180.101.50.188), 30 hops max, 60 byte packets1 * * *2 * * *3 * * *4 10.39.30.182 0.948 ms 0.947 ms 1.005 ms5 10.39.23.246 2.180 ms 2.617 ms 3.064 ms6 10.39.3.250 5.112 ms 4.943 ms 5.440 ms7 * * *8 58.213.94.197 0.921 ms 0.842 ms 0.824 ms9 * * *
10 58.213.96.66 1.810 ms 1.877 ms 1.891 ms
11 * * *
12 * * *
13 * * *
14 180.101.50.188 0.578 ms 0.484 ms 0.534 ms
linux下的traceroute默认发送UDP,可能会没法到达baidu
增加-I
选项,使得traceroute发送的是icmp
数据包,即可访问到
需求9-查看路由
解法
[root@ecm ~]# ip ro
default via 10.0.0.1 dev eth0 proto dhcp metric 100
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.124 metric 100
169.254.169.254 via 10.0.0.1 dev eth0 proto dhcp metric 100[root@ecm ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.0.1 0.0.0.0 UG 100 0 0 eth0
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
169.254.169.254 10.0.0.1 255.255.255.255 UGH 100 0 0 eth0
相关文章:

Linux下网络命令
目录 需求1-查看本机是否存在22端口解法1解法2解法3 需求2-查看其他主机是否存在22端口解法1解法2解法3 需求3-查看TCP连接解法1/2 需求4-统计80端口tcp连接次数解法 需求5-查看总体网络速度解法 需求6-查看进程流量解法 需求7-dns解法 需求8-traceroute到baidu解法 需求9-查看…...
Php swoole和mqtt
在 PHP 中使用 Swoole 处理 MQTT 订阅消息是一种高效的方式,可以充分利用 Swoole 协程的非阻塞特性和高性能 I/O 处理能力。下面是一个示例代码,演示了如何使用 Swoole 的 MQTT 客户端来订阅消息,并加以详细说明。 1. 安装 Swoole 首先&…...
Spring STOMP-连接到消息代理
STOMP 代理中继维护一个与消息代理的“系统”TCP 连接。这个连接仅用于来自服务器端应用程序的消息,不用于接收消息。您可以为此连接配置STOMP凭据(即STOMP帧的login和passcode头部)。这在XML命名空间和Java配置中都以systemLogin和systemPas…...
Excel中的`MMULT`函数
Excel中的MMULT函数是一个用于执行矩阵乘法运算的函数。矩阵乘法是线性代数中的一个基本运算,它允许我们计算两个矩阵的乘积,得到一个新的矩阵。与普通的标量乘法不同,矩阵乘法涉及到行与列的对应元素相乘然后求和的过程。MMULT函数在进行数据…...
孩子多大可以接触python?学习python的好处
孩子接触Python的年龄并没有明确的界限,一般来说,6岁以上的孩子可以开始学习Python编程。虽然Python是一门高级编程语言,但它的语法简单易懂,适合初学者入门。通过学习Python编程,孩子可以培养逻辑思维、创造力和解决问…...

四川汇昌联信:拼多多网点怎么开?大概需要多少钱?
想要开一家拼多多网点,你肯定很关心需要准备多少资金。下面,我们就来详细解答这个问题,并从多个角度分析开设网点的要点。 一、 开设拼多多网点,首要任务是确定启动资金。根据不同的经营模式和地区差异,成本会有所不同…...

ROS 2边学边练(43)-- 利用GTest写一个基本测试(C++)
前言 在ROS(Robot Operating System)中,gtest(Google Test)是一个广泛使用的C测试框架,用于编写和执行单元测试。这些测试可以验证ROS节点、服务和消息等的正确性和性能。 如果我们需要在写的包中添加测试&…...

3.整数运算
系列文章目录 信息的表示和处理 : Information Storage(信息存储)Integer Representation(整数表示)Integer Arithmetic(整数运算)Floating Point(浮点数) 文章目录 系列文章目录前…...
uri.getQueryParameters(name)返回一个列表(List)
uri.getQueryParameters(name)返回一个列表(List)而不是单个值的原因在于URI(统一资源标识符)中查询参数(query parameters)的设计允许同一个名称(name)对应多个值。这意味着一个查询…...

鸿蒙ArkUI开发:常用布局【主轴】
ArkUI中常用布局容器 线性布局(Row/Column) 线性布局的子元素在线性方向上(水平方向和垂直方向)依次排列线性布局容器包括[Row]和[Column]。Column容器内子元素按照垂直方向排列,Row容器内子元素按照水平方向排列开发…...
Spring Security 入门 2
1.项目实战 就以RuoYi-Vue 为例吧,主要以下几点原因: 基于 Spring Security 实现。 基于 RBAC 权限模型,并且支持动态的权限配置。 基于 Redis 服务,实现登录用户的信息缓存。 前后端分离。同时前端采用 Vue ,相对来…...

C++初阶学习第七弹——探索STL奥秘(二)——string的模拟实现
标准库中的string:C初阶学习第六弹——string(1)——标准库中的string类-CSDN博客 前言: 在前面我们已经学习了如何使用标准库中的string类,但作为一个合格的程序员,我们不仅要会用,还要知道如…...

5.nginx常用命令和日志定时切割
一. nginx常用的相关命令介绍 1.强制关闭nginx: ./nginx -s stop 2.优雅的关闭nginx: ./nginx -s quit 3.检查配置文件是否正确: ./nginx -t 4.查看nginx版本: ./nginx -v 5.查看nginx版本相关的配置环境信息:./nginx -V 6.nginx帮助信…...

Redis-详解(基础)
文章目录 什么是Redis?用Redis的特点?用Redis可以实现哪些功能?Redis的常用数据类型有哪些?Redis的常用框架有哪些?本篇小结 更多相关内容可查看 什么是Redis? Redis(Remote DictionaryServer)是一个开源…...

记录minio的bug(Object name contains unsupported characters.)
场景是我将后端服务从121.xxx.xxx.xxx服务器上转移到了另一台服务器10.xxx.xxx.xxx 但图片都还在121.xxx.xxx.xxx服务器上,同样我10.xxx.xxx.xxx也安装了minio并且我的后端服务配置的minio地址也是10.xxx.xxx.xxx 此时有一个业务通过minio客户端获取图片…...
【嵌入式开发 Linux 常用命令系列 7.6 -- sed 替换指定字符串】
请阅读【嵌入式开发学习必备专栏】 文章目录 sed 替换指定字符串 sed 替换指定字符串 背景: 找到当前目录下所有的.h 和 .c 文件 将他们中的字符 print_log替换为 demo_log 可以使用find命令结合sed命令在Linux环境下完成这项任务。下面是一个命令行示例ÿ…...

C++语言的字符数组
存放字符数据的数组是字符数组,字符数组中的一个元素存放一个字符。字符数组具有数组的共同属性。 1. 声明一个字符数组 char c[5]; 2. 字符数组赋值方式 (1)为数组元素逐一赋值 c[0]H c[1]E c[2]L c[3]L c[4]O (2&…...
24届电信红队实习生面经
sql注入的一些:原理、打的靶场的常见绕过、问了一些函数 (load_file、 outfile这些)、后利用 (mysql的udf提权的原理、条件、利用、其他像mssql这些数据库的提权手段、这些就没细问了, 就问有哪些方式; 问了有没有实战遇到mysql的…...

linux下使用jexus部署aspnet站点
1.运行环境 Centos 7 安装dos2unix工具 yum install dos2unix 安装jexus curl https://jexus.org/release/x64/install.sh|sudo sh2.网站部署 2.1. 将windows下的网站发布包Msc_qingdao_admin.zip上传到linux中, 然后解压后放入/var/www(没有则创建)目录下 r…...

代码随想录训练营Day 27|理论基础、力扣 77. 组合
1.理论基础 题目链接/文章讲解:代码随想录 视频讲解:带你学透回溯算法(理论篇)| 回溯法精讲!_哔哩哔哩_bilibili 来自代码随想录的网站: void backtracking(参数) {if (终止条件) {存放结果;return;}for (…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决
Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...

ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...

云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
MySQL 主从同步异常处理
阅读原文:https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主,遇到的这个错误: Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一,通常表示ÿ…...
第八部分:阶段项目 6:构建 React 前端应用
现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...
机器学习的数学基础:线性模型
线性模型 线性模型的基本形式为: f ( x ) ω T x b f\left(\boldsymbol{x}\right)\boldsymbol{\omega}^\text{T}\boldsymbol{x}b f(x)ωTxb 回归问题 利用最小二乘法,得到 ω \boldsymbol{\omega} ω和 b b b的参数估计$ \boldsymbol{\hat{\omega}}…...