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

Linux 常用命令——网络篇(保姆级说明)

网络相关

远程登录到其他计算机(ssh)

ssh [options] [user@]hostname [command]

# 连接到远程主机:
ssh user@hostname

# 指定端口连接:
ssh -p 2222 user@hostname

# 使用身份验证文件:
ssh -i /path/to/private_key user@hostname

参数说明:

[user@]hostname:要连接的远程主机的用户名和主机名。
[command]:可选的在远程主机上执行的命令。

常用参数:
-l user:指定要登录的用户。
-p port:指定连接到远程主机的端口号,默认是22。
-i identity_file:指定身份验证文件(私钥文件)。
-v:详细模式,可以显示调试信息。
-C:启用压缩。
-N:不执行远程命令,只进行端口转发。
-f:后台运行。
-L local_port:remote_host:remote_port:本地端口转发。
-R remote_port:local_host:local_port:远程端口转发。
-D [bind_address:]port:动态应用程序级端口转发。

查看和配置网络接口信息(ifconfig/ip)

ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]

# 显示网络设备信息
ifconfig  

# 启动关闭指定网卡
ifconfig eth0 down
ifconfig eth0 up

# 配置IP地址
# 给eth0网卡配置IP地址
ifconfig eth0 192.168.1.56 
# 给eth0网卡配置IP地址,并加上子掩码
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 
# 给eth0网卡配置IP地址,加上子掩码,加上个广播地址
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255

参数说明:
add<地址> 设置网络设备IPv6的IP地址。
del<地址> 删除网络设备IPv6的IP地址。
down 关闭指定的网络设备。
<hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址。
io_addr<I/O地址> 设置网络设备的I/O地址。
irq<IRQ地址> 设置网络设备的IRQ。
media<网络媒介类型> 设置网络设备的媒介类型。
mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。
mtu<字节> 设置网络设备的MTU。
netmask<子网掩码> 设置网络设备的子网掩码。
tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。
up 启动指定的网络设备。
-broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
-pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。
-promisc 关闭或启动指定网络设备的promiscuous模式。
[IP地址] 指定网络设备的IP地址。
[网络设备] 指定网络设备的名称。

ip [ OPTIONS ] OBJECT { COMMAND | help }

ip link show                     # 显示网络接口信息
ip link set eth0 up             # 开启网卡
ip link set eth0 down            # 关闭网卡
ip link set eth0 promisc on      # 开启网卡的混合模式
ip link set eth0 promisc offi    # 关闭网卡的混个模式
ip link set eth0 txqueuelen 1200 # 设置网卡队列长度
ip link set eth0 mtu 1400        # 设置网卡最大传输单元
ip addr show     # 显示网卡IP信息
ip addr add 192.168.0.1/24 dev eth0 # 设置eth0网卡IP地址192.168.0.1
ip addr del 192.168.0.1/24 dev eth0 # 删除eth0网卡IP地址

ip route show # 显示系统路由
ip route add default via 192.168.1.254   # 设置系统默认路由
ip route list                 # 查看路由信息
ip route add 192.168.4.0/24  via  192.168.0.254 dev eth0 # 设置192.168.4.0网段的网关为192.168.0.254,数据走eth0接口
ip route add default via  192.168.0.254  dev eth0        # 设置默认网关为192.168.0.254
ip route del 192.168.4.0/24   # 删除192.168.4.0网段的网关
ip route del default          # 删除默认路由
ip route delete 192.168.1.0/24 dev eth0 # 删除路由

常用参数:
-V:显示命令的版本信息;
-s:输出更详细的信息;
-f:强制使用指定的协议族;
-4:指定使用的网络层协议是IPv4协议;
-6:指定使用的网络层协议是IPv6协议;
-0:输出信息每条记录输出一行,即使内容较多也不换行显示;
-r:显示主机时,不使用IP地址,而使用主机的域名。
help 为该命令的帮助信息。

测试与主机的连通性(ping)

ping [选项] [目标主机/IP地址]

#快速检测网络连接:发送一个数据包,并设置超时为 1 秒,快速检测网络是否连接。
ping -c 1 -W 1 www.example.com

#测试大数据包的网络稳定性:发送 1024 字节的数据包共计 10 次,用于检测网络承载能力。
ping -s 1024 -c 10 www.example.com

# IPv6 网络测试:强制使用 IPv6 协议测试连接,适用于 IPv6 环境。
ping -6 www.example.com

参数说明:
-c:指定发送的数据包数量,例如 -c 4 表示发送 4 个数据包。
-i:指定每次发送数据包的间隔时间(秒),例如 -i 0.5 表示每 0.5 秒发送一次。
-w:设置发送数据包的等待时间上限,超出该时间后自动停止,例如 -w 5 表示等待 5 秒。
-s:指定每个数据包的大小(字节),默认是 56 字节。
-t:设置数据包的生存时间(TTL),指定路由跳数。
-q:安静模式,只显示开始和结束的统计数据,不显示每个数据包的详细信息。
-f:疯狂模式,快速发送数据包,用于测试网络承载能力,需谨慎使用。
-l:指定一次发送的数据包数量,通常用于负载测试。
-v:显示详细输出信息,用于调试。
-4:强制使用 IPv4 协议。
-6:强制使用 IPv6 协议。

用于网络连接测试和数据传输(nc)

nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]

# TCP端口扫描 扫描192.168.0.3 的端口 范围是 1-100
nc -v -z -w2 192.168.0.3 1-100 

# 扫描UDP端口,扫描192.168.0.3 的端口 范围是 1-1000
nc -u -z -w2 192.168.0.1 1-1000 

# 扫描指定端口80
nc -nvv 192.168.0.1 80 

nc -vz host_name_or_ip port # 测试主机的端口是否可达

参数说明:
-g<网关> 设置路由器跃程通信网关,最多可设置8个。
-G<指向器数目> 设置来源路由指向器,其数值为4的倍数。
-h 在线帮助。
-i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
-l 使用监听模式,管控传入的资料。
-n 直接使用IP地址,而不通过域名服务器。
-o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
-p<通信端口> 设置本地主机使用的通信端口。
-r 乱数指定本地与远端主机的通信端口。
-s<来源位址> 设置本地主机送出数据包的IP地址。
-u 使用UDP传输协议。
-v 显示指令执行过程。
-w<超时秒数> 设置等待连线的时间。
-z 使用0输入/输出模式,只在扫描通信端口时使用。

查看服务及监听端口(netstat)

netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]

# 显示详细的网络状况
netstat -a

# 显示当前户籍UDP连接状况
netstat -nu

# 查看当前所有tcp端口
netstat -ntlp   

# 查看所有80端口使用情况
netstat -ntulp |grep 80   

# 查看所有3306端口使用情况
netstat -an | grep 3306  

# 查看当前所有监听端口·
netstat -nlp |grep LISTEN   

1、0.0.0.0代表本机上可用的任意地址。 比如0.0.0.0:135 表示本机上所有地址的135端口,这样多ip计算机就不用重复显示了。
2、TCP 0.0.0.0:80表示在所有的可用接口上监听TCP80端口
3、0.0.0.0为默认路由,即要到达不再路由表里面的网段的包都走0.0.0.0这条规则
然后127.0.0.1就是表示你本机ip地址的意思了。
然后[::]:21 这个表示ipv6的21号端口的意思。

参数说明:
-a或–all 显示所有连线中的Socket。
-A<网络类型>或–<网络类型> 列出该网络类型连线中的相关地址。
-c或–continuous 持续列出网络状态。
-C或–cache 显示路由器配置的快取信息。
-e或–extend 显示网络其他相关信息。
-F或–fib 显示路由缓存。
-g或–groups 显示多重广播功能群组组员名单。
-h或–help 在线帮助。
-i或–interfaces 显示网络界面信息表单。
-l或–listening 显示监控中的服务器的Socket。
-M或–masquerade 显示伪装的网络连线。
-n或–numeric 直接使用IP地址,而不通过域名服务器。
-N或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称。
-o或–timers 显示计时器。
-p或–programs 显示正在使用Socket的程序识别码和程序名称。
-r或–route 显示Routing Table。
-s或–statistics 显示网络工作信息统计表。
-t或–tcp 显示TCP传输协议的连线状况。
-u或–udp 显示UDP传输协议的连线状况。
-v或–verbose 显示指令执行过程。
-V或–version 显示版本信息。
-w或–raw 显示RAW传输协议的连线状况。
-x或–unix 此参数的效果和指定"-A unix"参数相同。
–ip或–inet 此参数的效果和指定"-A inet"参数相同。


http://www.kler.cn/a/519071.html

相关文章:

  • Go语言开发项目文件规范
  • 基于C++的DPU医疗领域编程初探
  • 笔灵ai写作技术浅析(二):自然语言处理
  • Linux的常用指令的用法
  • VScode 开发 Springboot 程序
  • 免费SSL证书申请,springboot 部署证书
  • jira.issueviews
  • 把Eclipse转为AndroidStudio2024.1工程android源码转换过程 解决示例:android蓝牙串口助手
  • C++11线程
  • 超分辨率体积重建实现术前前列腺MRI和大病理切片组织病理学图像的3D配准
  • 【网络编程】Java高并发IO模型深度指南:BIO、NIO、AIO核心解析与实战选型
  • 【技术】TensorRT 10.7 安装指南(Ubuntu22.04)
  • Unity git版本管理
  • react面试题二
  • 人工智能在教育领域的创新应用与前景展望
  • 【内蒙古乡镇界】面图层shp格式+乡镇名称和编码wgs84坐标无偏移arcgis数据内容测评
  • 前端开发中的最新技术——CSS Container Queries: 自适应布局的新纪元
  • 适用于IntelliJ IDEA 2024.1.2部署Tomcat的完整方法,以及笔者踩的坑,避免高血压,保姆级教程
  • CV面试、就业经验分享
  • Linux第一讲--基本的命令操作
  • 【Elasticsearch】权限管理
  • 代理模式 - 代理模式的应用
  • windows11关闭系统更新详细操作步骤
  • 2025数学建模美赛|赛题翻译|E题
  • 使用vitepress搭建自己的博客项目
  • 力扣算法题——202.快乐数【系统讲解】