当前位置: 首页 > news >正文

Linux网络配置与测试

 

目录

一.与网络配置相关的命令

1.1ifconfig命令

1.1.1作用

1.1.2网络接口的信息

接口信息的组成

1.1.3显示所有网卡包括没有启动的网卡

 1.1.4查看指定网络接口

1.1.5开启或关闭网卡  

 1.1.6设置临时虚拟网卡

1.1.7网络通讯情况

​编辑

1.1.8临时修改网卡属性 

 1.2hostname命令

 1.2.1作用

1.2.2永久修改主机名  

1.2.3临时修改主机名

1.3route命令

1.3.1作用

1.3.2查看IP路由表

​编辑 路由表的信息组成

1.3.3让路由表信息以数字形式显示

1.3.4 添加静态路由

1.3.5删除现有的路由 

1.3.6删除默认的网关记录 

1.3.7添加默认网关记录

1.4查看网络连接情况 

1.4.1 netstat命令(不建议使用)

1.4.1.1作用 

1.4.2ss( socket statistics)命令

1.4.2.1作用

二.网络测试

2.1ping命令

2.2traceroute命令 

2.3nslookup命令 

三.永久修改网络相关配置文件 

 3.1网卡

3.2添加新网卡

 四.多网卡绑定bond

4.1 什么是bond

4.2 Bonding 聚合链路工作模式

4.3 模拟实现bond mod=1 

五.tcpdump 抓包工具

5.1命令格式

常见选项

2. 过滤规则

(1)按 IP 过滤

(2) 按端口过滤

 (3) 按协议过滤

(4) 组合过滤 


一.与网络配置相关的命令

1.1ifconfig命令

1.1.1作用

用于显示网络接口信息

1.1.2网络接口的信息

ifconfig   #显示所有的已经开启的网络接口的信息

接口信息的组成

ens33

ens33: flags=4163<UP,   BROADCAST,RUNNING,MULTICAST>  mtu 1500该接口 已启用,支持广播、 正在运行  支持组播         最大传输单元1500字节inet 192.168.91.100  netmask 255.255.255.0  broadcast 192.168.91.255inet6 fe80::fe7:ca03:81f:2887  prefixlen 64  scopeid 0x20<link>IPV6地址                        子网长度       作用域 link表示仅该接口有效ether 00:0c:29:fe:e5:bf  txqueuelen 1000        (Ethernet)mac地址                   传输队列长度(传输缓存大小)  接口类型RX  packets 2211  bytes 182146 (177.8 KiB)接收 报文个数      总和字节数RX  errors 0  dropped 0  overruns 0  frame 0接收 错误       丢弃        溢出       冲突帧数TX  packets 1317  bytes 294334 (287.4 KiB)发送 报文个数       总字节数TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0错误       丢失         溢出        载荷数     冲突数

补充:ens33:第一块以太网卡的名称详解

“ens33”中的

  • “en”是“EtherNet”的缩写,表示网卡 类型为以太网,

  • “s” 表示热插拔插槽上的设备(hot-plug Slot),

  • 数字“33”表示插槽 编号

lo回环接口(与ens33相似部分不在重复描述)


inet 127.0.0.1  netmask 255.0.0.0
#本地回环接口的IP地址是 127.0.0.1,网络掩码是 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>
#inet6 ::1          表示IPv6下的本地回环地址
#prefixlen 128      表示网络前缀的长度为 128,全部地址都被视为主机标识。
#scopeid 0x10<host> 表示该地址的作用域 ID 是 0x10,标识为主机(host)级别的地址loop  txqueuelen 1  (Local Loopback)可缓存一个数据包   本地环回接口

virbr0 虚拟网络接口

ther 52:54:00:74:e7:a9  txqueuelen 1000  (Ethernet)MAC地址            可以缓存1000个数据包 以太网

1.1.3显示所有网卡包括没有启动的网卡
 

ifconfig          -a     

 

 1.1.4查看指定网络接口

ifconfig 接口名  #显示指定网络接口的详细配置信息

1.1.5开启或关闭网卡  

ifconfig          网卡名称        [up|down] 

 1.1.6设置临时虚拟网卡

ifconfig           网卡名称:0          地址

1.1.7网络通讯情况

ifconfig -s

1.1.8临时修改网卡属性 

ifconfig ens33 192.168.2.122 255.255.255.0  #临时修改IP地址和子网掩码

 

 

 

 

 1.2hostname命令

 1.2.1作用

hostname命令用于显示或设置系统的主机名。主机名是标识网络上计算机的名称。

hostname #显示当前主机名

1.2.2永久修改主机名  

hostnamectl set-hostname 新主机名

1.2.3临时修改主机名

hostname 2025 #将主机名临时修改为2025,2025为自定义,重启后修改失效

 

1.3route命令

1.3.1作用

用于查看或设置系统的IP路由表。

1.3.2查看IP路由表

route  
 路由表的信息组成
#路由表主要构成:
#Destination: 目标网络ID,表示可以到达的目标网络ID,0.0.0.0/0 表示所有未知网络,又称为默认路
由,优先级最低
#Genmask:目标网络对应的netmask
#Iface: 到达对应网络,应该从当前主机哪个网卡发送出来
#Gateway: 到达非直连的网络,将数据发送到临近(下一个)路由器的临近本主机的接口的IP地址,如果是直连网络,gateway是0.0.0.0
#Metric: 开销cost,值越小,路由记录的优先级最高

1.3.3让路由表信息以数字形式显示

route -n 

1.3.4 添加静态路由

route add -net 目标网段地址 子网掩码  gw 下一跳IP地址 [下一跳网关 下一跳IP地址的端口]route add -net 192.168.100.0/24 gw 192.168.52.2
#给192.168.100.0/24段添加静态路由

1.3.5删除现有的路由 

route del -net 目标网段 子网掩码 [gw 下一跳IP地址]route del -net 192.168.100.0/24 
#删除添加路由

1.3.6删除默认的网关记录 

route del  default  gw IP地址

1.3.7添加默认网关记录

 route  add  default  gw IP地址

1.4查看网络连接情况 

1.4.1 netstat命令(不建议使用)

1.4.1.1作用 

netstat命令用于显示与网络相关的统计信息,包括连接状态、网络接口的活动情况、路由表等。

#命令格式
netstat [选项]   #常用选项:
-a 显示所有活动连接和监听端口
-n 直接使用IP地址和端口号显示网络连接,而不进行DNS解析
-o 显示与每个连接关联的进程ID
-p 显示与每个连接关联的程序名称或进程名称
-s 显示不同协议的统计信息,例如TCP、UDP和ICMP

1.4.2ss( socket statistics)命令

1.4.2.1作用

也可以查看网络连接情况,  相较于netstat,提供了更快速和更详细的统计数据

#命令格式
ss [选项] #常用选项
-t: tcp协议相关
-u: udp协议相关
-a: 所有
-n: 数字格式
-p: 相关的程序及PID-w: 裸套接字相关
-x:unix sock相关
-l: listen状态的连接
-e: 扩展的信息
-m:内存用量
-o:计时器信息
-r: --resolve 把 IP 解释为域名,把端口号解释为协议名称# 一般用 ss -natp

二.网络测试

2.1ping命令

作用:测试网络连通性

#命令格式
ping [选项] 目标主机 #检查能否连通目标主机,默认是长ping#常用选项
-c 数字 代表发几个包-w 数字 表示如果ping不通多久后返回,不会再ping-W 10   表示如果ping不通10秒后返回#ping使用icmp协议

2.2traceroute命令 

作用:用于跟踪 IP 数据包从源地址到目标地址的路径

 

traceroute    IP地址

2.3nslookup命令 

作用:用于查询域名系统(DNS)记录

nslook 域名

三.永久修改网络相关配置文件 

 3.1网卡

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 
DEVICE=ens33 
NAME=ens33                   //网卡名称
BOOTPROTO=static             //网卡获取地址模式   none   dhcp
ONBOOT=yes                   //开机是否自启动IPADDR=192.168.52.105               //配置你自己的IP地址子网网关还有dns服务器
NETMASK=255.255.255.0               //PREFIX=24
GATEWAY=192.168.52.2
DNS1=8.8.8.8
DNS2=114.114.114.114// IPADDR=          设置静态IP地址。NETMASK=         设置子网掩码。GATEWAY=         设置默认网关。DNS1=            设置首选DNS服务器。DNS2=            设置备用DNS服务器。 //[root@localhost ~]# systemctl restart network         //重启网卡服务 
[root@localhost ~]# ping 192.168.52.1                 //测试网络是否通顺
PING 192.168.52.1 (192.168.52.1) 56(84) bytes of data.
64 bytes from 192.168.52.1: icmp_seq=1 ttl=128 time=0.871 ms
64 bytes from 192.168.52.1: icmp_seq=2 ttl=128 time=0.487 ms
64 bytes from 192.168.52.1: icmp_seq=3 ttl=128 time=0.347 ms

3.2添加新网卡

 

cp /etc/sysconfig/network-scripts/ifcfg-ens33  /etc/sysconfig/network-scripts/ifcfg-ens36
将已有的网卡配置导入


 

 只需进行少量修改

systemctl restart network #重启网络服务

 四.多网卡绑定bond

4.1 什么是bond

bond(网络绑定或链路聚合),将多个网络接口绑定在一起,形成一个虚拟的网络接口
bond技术可以增加带宽、提高连接可靠性和实现负载均衡。

4.2 Bonding 聚合链路工作模式

模式名称工作原理适用场景
mode=0balance-rr轮询(Round Robin):数据包依次从每个网卡发送。负载均衡,但可能乱序(不推荐 TCP)
mode=1active-backup主备模式:只有一个网卡活跃,其他备用,故障时自动切换。高可用性(默认推荐)
mode=2balance-xorXOR 哈希:根据源/目标 MAC/IP/端口计算哈希,固定流走固定网卡。负载均衡(需交换机支持)
mode=3broadcast广播:所有数据包从所有网卡发送。冗余性(极少使用)
mode=4802.3adLACP 动态聚合:需交换机支持 802.3ad,自动协商聚合链路。企业级负载均衡 + 冗余
mode=5balance-tlb自适应发送负载均衡:根据当前负载分配流量,接收仅走主卡。无需交换机支持
mode=6balance-alb自适应负载均衡:发送和接收都智能分配(需 ARP 协商)。智能负载均衡(家用/小型网络)

4.3 模拟实现bond mod=1 

1)添加网卡

ifconfig #查看是否添加成功新网卡

2)编辑网卡配置文件

cd /etc/sysconfig/network-scripts #切换到配置文件所在目录 方便编辑
##添加ifcfg-bond0文件##vim ifcfg-bond0 
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.91.22
NETMASK=255.255.255.0
GATEWAY=192.168.91.2
DNS1=8.8.8.8
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"#miimon指定链路监测时间间隔。如果miimon=100,那么系统每100ms 监测一次链路连接状态,
如果有一条线路不通就转入另一条线路
#fail_over_mac=1"   永远使用活着的 网卡的mac地址

 

##修改ifcfg-ens33文件##
vim ifcfg-ens33
BOOTPROTO=static #none=static
NAME=ens33
DEVICE=ens33 
ONBOOT=yes
MASTER=bond0 #主网卡为bond0
SLAVE=yes #自身为备网卡

vim ifcfg-ens36
NAME=ens36
DEVICE=ens36
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes

 

systemctl restart network #重启网络服务,应用修改

 3)查看bond0状态,看看是否配置成功

cat /proc/net/bonding/bond0 #查看bond0状态

ifconfig ens33 down #关闭ens33接口 模拟出错

 

cat /proc/net/bonding/bond0 #查看bond0状态 

 

五.tcpdump 抓包工具

5.1命令格式

//格式
tcpdump    option   proto     dir         type选项      协议      数据的方向    抓取的数据类型proto(协议):    
1. tcp  udp   icmp
2. ip   ipv6
3. arpdir(方向):
1. src
2. dst
3. src and   dsttype(类型):
1. host  主机   
2. net  网段
3. port  端口     
4. port range  端口范围

常见选项

选项说明
-i <网卡>指定监听的网卡(如 eth0wlan0any
-n禁用 DNS 解析(直接显示 IP,提升速度)
-nn禁用端口解析(不显示 http/ssh 等协议名)直接显示ip和端口号
-c <数量>抓取指定数量的包后停止(如 -c 10 抓 10 个包)
-w <文件>保存抓包数据到 pcap 文件(可用 Wireshark 分析)
-r <文件>读取 pcap 文件(分析已保存的数据)
-v显示详细信息(TTL、校验和等)
-C需要与w 配合使用 指定单个文件的大小 百万字节
-Q过滤数据包的方向 in out inout
-s指定数据包的大小
-D显示所有可用的列表
-q简洁的输出
-t在每行的输出中,不显示时间
-tt输出一个时间戳
-ttt每行之间的时间间隔
-tttt详细日期

 (1) 指定网卡抓包

tcpdump -i eth0       # 监听 eth0 网卡
tcpdump -i any        # 监听所有网卡

 

输出格式讲解:

第一列:时分毫秒 11:53:55.288476

第二例:网络协议ip

第三列:发送方IP地址+端口号 ip地址:192.168.91.1 端口号:47496 >表示数据流向

第四列:主机名协议 主机名:localhost.localdomain 协议:ssh

第五列: seq号 ack号 win窗口长度 tcp的标志位

 

​
#查看网卡
[root@centos8 ~]#tcpdump -D
1.eth0 [Up, Running]
2.lo [Up, Running, Loopback]
3.any (Pseudo-device that captures on all interfaces) [Up, Running]
4.bluetooth-monitor (Bluetooth Linux Monitor) [none]
5.nflog (Linux netfilter log (NFLOG) interface) [none]
6.nfqueue (Linux netfilter queue (NFQUEUE) interface) [none]
7.usbmon0 (All USB buses) [none]
8.usbmon1 (USB bus number 1)
9.usbmon2 (USB bus number 2)
#不指定任何参数,监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。
tcpdump
#监听特定网卡
tcpdump -i enth0
#监听特定主机,监听主机10.0.0.100 的通信包,注意:出、入的包都会被监听。
tcpdump host 10.0.0.100
#特定来源、目标地址的通信
#特定来源
tcpdump src host hostname
#特定目标地址
tcpdump dst host hostname
#如果不指定src跟dst,那么来源或者目标是hostname的通信都会被监听
tcpdump host hostname
#面试题
请抓取源地址是10.0.0.6目的地址是10.0.0.7经过eth0网卡的icpm协议包
[root@centos8 ~]#tcpdump -i eth0 -nn icmp and src host 10.0.0.6 and dst host 10.0.0.7tcpdump -i ens33  -nn  icmp and src host 10.0.0.6 and  dst host  10.0.0.7//
参数/过滤条件	作用
-i ens33	监听网卡 ens33(通常是 Linux 的默认以太网接口)
-nn	禁用 DNS 和端口解析,直接显示 IP 和端口号(提升可读性和性能)
icmp	只捕获 ICMP 协议 的数据包(如 Ping 请求/响应)
src host 10.0.0.6	只显示 源 IP 为 10.0.0.6 的包
dst host 10.0.0.7	只显示 目标 IP 为 10.0.0.7 的包
and	逻辑与,组合多个过滤条件这条命令通常用于:监控两台主机间的 Ping 通信(如 10.0.0.6 Ping 10.0.0.7)。排查网络连通性问题(检查 ICMP 包是否能正常到达目标)。分析 ICMP 包的往返时间(RTT)。
//#特定端口
tcpdump port 3000
#监听TCP/UDP,服务器上不同服务分别用了TCP、UDP作为传输层,假如只想监听TCP的数据包
tcpdump tcp#来源主机+端口+TCP,监听来自主机10.0.0.100在端口22上的TCP数据包
tcpdump tcp port 22 and src host 10.0.0.100#监听特定主机之间的通信
tcpdump ip src  host 10.0.0.101 and 10.0.0.102#10.0.0.101和除了10.0.0.1之外的主机之间的通信
tcpdump ip host 10.0.0.101 and ! 10.0.0.1​

 

2. 过滤规则

(1)按 IP 过滤
tcpdump host 192.168.1.1            # 抓取与 192.168.1.1 相关的流量
tcpdump src 192.168.1.1             # 仅抓取来源 IP
tcpdump dst 192.168.1.1             # 仅抓取目标 IP
(2) 按端口过滤
tcpdump port 80                     # 抓取 80 端口(HTTP)
tcpdump src port 22                 # 抓取来源 22 端口(SSH)
tcpdump dst port 443                # 抓取目标 443 端口(HTTPS)
 (3) 按协议过滤
tcpdump icmp                       # 抓取 ICMP(Ping 包)
tcpdump tcp                        # 抓取 TCP 流量
tcpdump udp                        # 抓取 UDP 流量
(4) 组合过滤 
tcpdump "host 192.168.1.1 and port 80"  # 抓取 192.168.1.1 的 80 端口流量
tcpdump "tcp and src 192.168.1.1"       # 抓取来自 192.168.1.1 的 TCP 流量

 

 

 

相关文章:

Linux网络配置与测试

目录 一.与网络配置相关的命令 1.1ifconfig命令 1.1.1作用 1.1.2网络接口的信息 接口信息的组成 1.1.3显示所有网卡包括没有启动的网卡 1.1.4查看指定网络接口 1.1.5开启或关闭网卡 1.1.6设置临时虚拟网卡 1.1.7网络通讯情况 ​编辑 1.1.8临时修改网卡属性 1.2hos…...

游戏赛季和数据处理

问题 游戏从无赛季到赛季机制会涉及哪些问题&#xff1a; 如何改动&#xff0c;增加赛季机制&#xff0c;涉及要修改的代码量最少如何改动&#xff0c;账号、角色部分数据继承问题&#xff0c;涉及要修改的代码量最少账号下角色的永久服共享或是永久服独立&#xff0c;需要做…...

京东店铺托管7*16小时全时护航

内容概要 京东店铺托管服务的*716小时全时护航模式&#xff0c;相当于给商家配了个全年无休的"运营管家"。专业团队每天从早7点到晚11点实时盯着运营数据和商品排名&#xff0c;连半夜流量波动都能通过智能系统秒级预警。这种全天候服务可不是单纯拼人力——系统自动…...

HTTP的Keep-Alive是什么?TCP 的 Keepalive 和 HTTP 的 Keep-Alive 是一个东西吗?

HTTP的Keep-Alive&#xff1a; HTTP Keep-Alive 是一种机制&#xff0c;允许客户端和服务器在单个 TCP 连接 上发送多个 HTTP 请求 和 响应&#xff0c;而不是每次请求和响应后都关闭连接。它的主要目的是提高性能&#xff0c;减少连接的开销&#xff0c;优化通信效率。 工作…...

使用scoop一键下载jdk和实现版本切换

安装 在 PowerShell 中输入下面内容&#xff0c;保证允许本地脚本的执行&#xff1a; set-executionpolicy remotesigned -scope currentuser然后执行下面的命令安装 Scoop&#xff1a; iwr -useb get.scoop.sh | iex国内用户可以使用镜像源安装&#xff1a;powershell iwr -us…...

PPIO × UI-TARS:用自然语言操控电脑,AI Agent 的极致体验

Manus的爆火预示着AI 正在从单纯的文本生成和图像识别迈向更复杂的交互场景。字节跳动近期推出的开源项目 UI-TARS Desktop 为我们展示了一种全新的可能性&#xff1a;能够通过自然语言理解和处理来控制计算机界面。这款工具代表了人工智能与人机交互领域的重大突破&#xff0c…...

PG:incorrect prev-link

目录 WAL日志中"incorrect prev-link"错误解决方案错误原因分析解决步骤典型修复案例 WAL日志中"incorrect prev-link"错误解决方案 错误原因分析 WAL日志的prev-link字段用于确保日志记录的连续性。当出现incorrect prev-link 2/754ECB0 at 2/8000028错…...

SQL Server 数据库邮件配置失败:SMTP 连接与权限问题

问题现象&#xff1a; 配置数据库邮件时&#xff0c;发送测试邮件失败&#xff0c;提示 “邮件无法发送到 SMTP 服务器&#xff0c;操作超时”&#xff08;错误 14661&#xff09;或 “服务器拒绝发件人地址”&#xff08;错误 15009&#xff09;。 快速诊断 检查数据库邮件配置…...

深入浅出动态规划:从基础到蓝桥杯实战(Java版)

引言&#xff1a;为什么你需要掌握动态规划&#xff1f; 动态规划&#xff08;DP&#xff09;是算法竞赛和面试中的常客&#xff0c;不仅能大幅提升解题效率&#xff08;时间复杂度通常为O(n)或O(n)&#xff09;[4]&#xff0c;更是解决复杂优化问题的利器。统计显示&#xff…...

获取cookie的chrome插件:Get cookies.txt LOCALLY

接上一篇&#xff0c;在下载视频的时候需要网站的cookie&#xff0c;下面介绍一款可以获取网站cookie的chrome插件 https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc?utm_sourceitem-share-cb 备注需要科学上网 【使用方…...

opencv无法设置禁用RGB转换问题

树莓派连接摄像头,摄像头输出格式为YUYV(YUV422)。 通过执行 v4l2-ctl --list-formats --device/dev/video0 可以看的具体的摄像头的数据格式。 使用opencv获取视频流&#xff0c;通过cap.set(cv2.CAP_PROP_CONVERT_RGB, 0)设置禁用自动转换RGB格式&#xff0c;但是打印输出…...

Ansible:roles角色

文章目录 Roles角色Ansible Roles目录编排Roles各目录作用创建 roleplaybook调用角色调用角色方法1&#xff1a;调用角色方法2&#xff1a;调用角色方法3&#xff1a; roles 中 tags 使用实战案例 Roles角色 角色是ansible自1.2版本引入的新特性&#xff0c;用于层次性、结构化…...

SAP系统采购信息记录失效

问题&#xff1a;采购信息记录失效 现象&#xff1a;最初主数据导入完成之后&#xff0c;单元测试的时采购信息记录是有效的&#xff0c;中间经过配置的变化&#xff0c;集成测试初期发现采购信息记录全部失效。 原因&#xff1a; 单元测试时发现采购订单里面的条件类型…...

JavaWeb 课堂笔记 —— 04 Ajax

本系列为笔者学习JavaWeb的课堂笔记&#xff0c;视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程&#xff0c;实现javaweb企业开发全流程&#xff08;涵盖SpringMyBatisSpringMVCSpringBoot等&#xff09;》&#xff0c;章节分布参考视频教程&#xff0c;为同样学习…...

Pandas 库

Pandas 是一个开源的数据分析和数据处理库&#xff0c;它是基于 Python 编程语言的。 Pandas 提供了易于使用的数据结构和数据分析工具&#xff0c;特别适用于处理结构化数据&#xff0c;如表格型数据 Pandas 是数据科学和分析领域中常用的工具之一&#xff0c;它使得用户能够…...

4.8学习总结

完成摆动序列的算法题&#xff08;比较难&#xff0c;想不出方法&#xff09; 学习了HashMap,TreeMap 的源码&#xff08;看完一遍对其理解没有太清楚&#xff0c;还需再多刷几遍理解源码及其底层逻辑的概念&#xff09; 学习了可变参数和Collections工具类...

C语言之九九乘法表

一、代码展示 二、运行结果 三、代码分析 首先->是外层循环是小于等于9的 然后->是内层循环是小于等于外层循环的 最后->就是\n让九九乘法表的格式更加美观(当然 电脑不同 有可能%2d 也有可能%3d) 四、与以下素数题目逻辑相似 五、运行结果...

【Linux操作系统】:信号

Linux操作系统下的信号 一、引言 首先我们可以简单理解一下信号的概念&#xff0c;信号&#xff0c;顾名思义&#xff0c;就是我们操作系统发送给进程的消息。举个简单的例子&#xff0c;我们在写C/C程序的时候&#xff0c;当执行a / 0类似的操作的时候&#xff0c;程序直接就挂…...

skynet.call使用详解

目录 skynet.call 详细解析1. 函数签名与参数2. 内部实现机制3. 会话ID与协程调度4. 超时与错误处理5. 返回值处理6. 协议类型的影响7. skynet.call vs skynet.send8. 示例代码分析9. 最佳实践10. 总结 skynet.call 详细解析 1. 函数签名与参数 函数签名&#xff1a; skynet…...

uniapp 打包 H5 向 打包的APP 使用 @dcloudio/uni-webview-js 传值

1.安装 dcloudio/uni-webview-js npm install dcloudio/uni-webview-js -save 这个模块的 uni. 会与H5的uniapp的 uni. 冲突,所以需要改下名称,一共需要改3处 2.引入并使用 import uniWeb from dcloudio/uni-webview-js;uniWeb.postMessage({data: {action: message,content…...

c语言 文件操作

c语言 文件操作 one 打开/usr/dev.txt文件&#xff0c;在第1行 覆盖写入 "MAC1q23456789" #include <fcntl.h> #include <unistd.h> #include <string.h> int main() { const char *line_1 "MAC1q23456789\n"; // 要写入的内容…...

企业电子招投标采购系统——功能模块功能描述+数字化采购管理 采购招投标

​功能描述 1、门户管理&#xff1a;所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含&#xff1a;招标公告、非招标公告、系统通知、政策法规。 2、立项管理&#xff1a;企业用户可对需要采购的项目进行立项申请&#xff0c;并提交审批&#xff0c;查看…...

Python 序列构成的数组(序列的增量赋值)

序列的增量赋值 增量赋值运算符 和 * 的表现取决于它们的第一个操作对象。简单起 见&#xff0c;我们把讨论集中在增量加法&#xff08;&#xff09;上&#xff0c;但是这些概念对 * 和其他 增量运算符来说都是一样的。 背后的特殊方法是 iadd &#xff08;用于“就地加法”&…...

力扣hot100【链表】

160.相交链表 题目 我的思路&#xff1a;两个链表一长一短&#xff0c;先把长的提前遍历使两个链表的长度相等&#xff0c;然后同时遍历&#xff0c;如果遍历的节点相等时说明相交&#xff0c;否则不相交。 /*** Definition for singly-linked list.* struct ListNode {* …...

PyTorch 生态迎来新成员:SGLang 高效推理引擎解析

SGLang 现已正式融入 PyTorch 生态系统&#xff01;此次集成确保了 SGLang 符合 PyTorch 的技术标准与最佳实践&#xff0c;为开发者提供了一个可靠且社区支持的框架&#xff0c;助力大规模语言模型&#xff08;LLM&#xff09;实现高效且灵活的推理。 如需深入了解 PyTorch…...

C++ Primer Plus 编程练习题 第六章 分支语句和逻辑运算符

1.大小写转换 使用cctype库里的函数进行大小写转换,但要注意使用toupper或tolower时要进行强制类型转换&#xff0c;否则会输出ASCII值 #include <iostream> #include<cctype> using namespace std;int main() {cout << "请输入字符串&#xff08;大…...

一文详解OpenGL环境搭建:Windows使用CLion配置OpenGL开发环境

在计算机图形学的广阔领域中,OpenGL作为行业标准的图形库,为开发者提供了强大的工具集来创建从简单的2D图形到复杂的3D世界。然而,对于初学者和经验丰富的开发者而言,选择一个合适的开发环境是迈向成功的第一步。尤其是在Windows平台上,配置一个既支持现代C++编程实践又能…...

一次奇怪的enq: TX - row lock contention锁问题处理

某天上午客户告知数据库库有锁导致数据库卡死&#xff0c;需排查出问题的原因&#xff0c;从根本上解决问题。 按正常步骤&#xff0c;查询V$SESSION中BLOCKING_SESSION列不为空的&#xff0c;发现没有进程互相阻塞的情况&#xff1b;而查询ACTIVE会话&#xff0c;则有大量进程…...

STL常用容器整理

STL常用容器操作整理 STL常用容器操作整理&#xff08;string/vector/set/map&#xff09;一、string&#xff08;字符串&#xff09;构造函数元素访问修改操作容量操作子串与查找 二、vector&#xff08;动态数组&#xff09;构造函数元素访问修改操作容量操作 三、set&#x…...

深入 PostgreSQL 内部:5 个关键阶段拆解查询处理全流程

引言 当您向 PostgreSQL 发送查询时&#xff0c;后端会经历多个处理阶段。每个阶段承担着不同的职责&#xff0c;以确保您能在最短时间内获得准确响应。虽然这些阶段可能庞大而复杂&#xff0c;但理解它们在查询处理中的角色对 PostgreSQL 开发者至关重要。本文将概述每个查询…...

解析 LILIkoi 光纤力传感器:FBG 原理铸就耐高温抗干扰优势

LILIkoi光纤力传感器通过光纤光栅&#xff08;FBG&#xff09;技术实现高精度力测量。其核心原理基于光纤内光栅栅距的微小变化&#xff0c;用以感知外界施加的力。该传感器在高温、强辐射等恶劣环境中表现出色&#xff0c;能够有效抵抗电磁干扰和温度漂移。凭借卓越的性能&…...

SU-YOLO:基于脉冲神经网络的高效水下目标检测模型解析

论文地址:https://arxiv.org/pdf/2503.24389 目录 一、论文概述 二、创新点解析 1. 基于脉冲的水下图像去噪(SpikeDenoiser) 原理与结构 2. 分离批归一化(SeBN) 原理与结构 3. 优化的残差块(SU-Block) 原理与结构 三、代码复现指南 环境配置 模型训练 四、…...

有关eeprom以及pwm

a0 a1就是对应的 芯片的 写和读 0写 1读 使用操作 主函数读一次 然后信息里一直写入。 用level设置挡位 如 10个格子 设置2 3 这样占空比就有了...

JMeter教程|0到1学会接口性能压测第14课-JMeter接口性能测试全流程讲解

Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一。 本文以百度搜索接口为例,全流程讲解JMeter接口性能测试。从JMeter下载安装到编写一个…...

系统思考:问题诊断

“做事不怕困难&#xff0c;怕的是不明白困难出在哪里。” —— 亨利福特 最近发现&#xff0c;有些领导者或者团队&#xff0c;常常急于给出解决方案&#xff0c;却忽视了最关键的一步——诊断问题的根源。团队甚至在集体心智模式的影响下&#xff0c;连问题本身都搞错了方向…...

有效压缩 Hyper-v linux Centos 的虚拟磁盘 VHDX

参考&#xff1a; http://www.360doc.com/content/22/0505/16/67252277_1029878535.shtml VHDX 有个不好的问题就是&#xff0c;如果在里面存放过文件再删除&#xff0c;那么已经使用过的空间不会压缩&#xff0c;导致空间一直被占用。那么就需要想办法压缩空间。 还有一点&a…...

使用 redis 实现消息队列

方案1: 使用list做消息队列问题1: 如何保证消息不丢失问题 2: 重复消费/幂等 方案 2: zset实现消息队列方案 3: 发布/订阅(pub/sub)问题1: 如何保证消息不丢失问题 2: 重复消费/幂等 方案 4: Stream 实现消息队列问题1: 如何保证消息不丢失问题 2: 重复消费/幂等 方案1: 使用li…...

2025 XYCTF Pwn-wp(含附件)

前言 总体来说Pwn方向题目难度属于中等,属于那种一眼看不出要咋做,但多试试又能做出来的那种,比赛的时候甚至有几只队伍AK了Pwn方向。感觉题目还是很不错的尽管比赛中有一些小意外像是有些题目附件给错了&#xff0c;但是XYCTF的师傅们都是无偿出题纯热爱向大伙分享自己的题目…...

verilog有符号数的乘法

1、单周期乘法器 对于低速要求的乘法器&#xff0c;可以简单的使用 * 实现。 module Mult(input wire [7:0] multiplicand ,input wire [7:0] multipliter ,output wire [7:0] product);assign product multiplicand * multipliter …...

【python3】关于等额本金和等额本息计算

【python3】关于等额本金和等额本息计算 1.背景2.计算3.总结4.推导 1.背景 在贷款买房的宝子们一定有了解等额本金和等额本息&#xff0c;年轻的时候只听销售在那里计算&#xff0c; 您可能听得云里雾里。 等额本金&#xff1a;每个月还的本金固定&#xff0c;利息逐渐减少。…...

git怎么删除远程分支

删除远程分支 引言删除远程分支查看远程分支查看远程分支详情删除远程分支 引言 本文旨在记录一下&#xff0c;git如何通过命令行删除远程分支。 删除远程分支 查看远程分支 使用指令&#xff1a; git branch -r查看远程分支详情 使用指令&#xff1a; git remote show …...

【C++】函数直接返回bool值和返回bool变量差异

函数直接返回bool值和返回bool变量差异 背景 在工作中遇到一个比较诡异的问题&#xff0c;场景是给业务方提供的SDK有一个获取状态的函数GetStatus&#xff0c;函数的返回值类型是bool&#xff0c;在测试过程中发现&#xff0c;SDK返回的是false&#xff0c;但是业务方拿到的…...

蓝桥杯-蓝桥幼儿园(并查集)

并查集的核心思想 并查集主要由两个操作构成&#xff1a; Find&#xff1a;查找某个元素所在集合的根节点。并查集的特点是&#xff0c;每个元素都指向它自己的父节点&#xff0c;根节点的父节点指向它自己。查找过程中可以通过路径压缩来加速后续的查找操作&#xff0c;即将路…...

Ensemble of differential evolution variants(EDEV)

差分进化变体的集成1 在这项研究中&#xff0c;一个基于多种群的框架&#xff08;MPF&#xff09;被提议用于多个差分进化变体的集合。与PAP2不同&#xff0c;PAP通过时间预算分配策略和个体移民算子实现算法组合&#xff0c;MPF将整个种群划分为子种群&#xff0c;包括几个指…...

《AI开发工具和技能实战》第1集 Windows CMD 命令行操作指南:从基础到进阶

第1集 Windows CMD 命令行操作指南&#xff1a;从基础到进阶 在日常使用 Windows 系统时&#xff0c;命令提示符&#xff08;Command Prompt&#xff0c;简称 CMD&#xff09;是一个强大且灵活的工具。无论是文件管理、系统配置&#xff0c;还是网络诊断&#xff0c;CMD 都能提…...

实现一个拖拽排序组件:Vue 3 + TypeScript + Tailwind CSS

文章目录 一、项目背景与需求分析需求&#xff1a; 二、搭建基础项目1. 初始化 Vue 3 项目2. 安装 Tailwind CSS 三、设计拖拽排序组件1. 创建拖拽排序组件2. 说明&#xff1a; 四、完善样式与功能1. 样式调整2. 拖拽顺序更新 五、进一步优化与拓展1. 添加排序指示器2. 支持动态…...

哈希表(开散列)的实现

目录 引入 开散列的底层实现 哈希表的定义 哈希表的扩容 哈希表的插入 哈希表查找 哈希表的删除 引入 接上一篇&#xff0c;我们使用了闭散列的方法解决了哈希冲突&#xff0c;此篇文章将会使用开散列的方式解决哈希冲突&#xff0c;后面对unordered_set和unordered_map的…...

解决 Jetpack Compose 中 State 委托报错:“no method getValue“ 的终极指南

1. 必须的导入 ✅ import androidx.compose.runtime.getValue // 核心关键&#xff01;作用&#xff1a;为 State 类型添加 getValue() 操作符&#xff0c;使其支持 by 委托语法。为什么需要&#xff1a;Kotlin 的委托属性需要对象实现 getValue() 方法&#xff0c;Compose 通…...

我们如何思考AI创业投资

&#x1f3ac; Verdure陌矣&#xff1a;个人主页 &#x1f389; 个人专栏: 《C/C》 | 《转载or娱乐》 &#x1f33e; 种完麦子往南走&#xff0c; 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持&#xff01;❤️ 声明&#xff1a;本文作者转载&#xff0c;原文出自…...

1.ElasticSearch-入门基础操作

一、介绍 The Elastic Stack 包含ElasticSearch、Kibana、Beats、LogStash 这就是所说的ELK 能够安全可靠地获取任何来源、任何格式的数据&#xff0c;然后实时地对数据进行搜索、分析和可视化。Elaticsearch,简称为ES&#xff0c;ES是一个开源的高扩展的分布式全文搜索引擎,是…...