Linux 网络维护相关命令简介

目录

  • 零. 概要
  • 一. ping
  • 二. ip命令
    • 2.1 ip address
    • 2.2 ip route
    • 2.3 ip neighbour
  • 三. traceroute
  • 四. DNS查询
    • 4.1 nslookup
    • 4.2 dig
  • 五. ss 查看网络连接状态


零. 概要

⏹在Linux系统中有2套用于网络管理的工具集

  • net-tools
    • 早期网络管理的主要工具集,缺乏对 IPv6、网络命名空间等现代特性的支持,可能存在与新内核不兼容的问题。
    • 在新版的Ubuntu系统中已经不再默认安装,安装命令:sudo apt install net-tools
    • 适合处理简单网络任务,或用于维护旧系统。
  • iproute2
    • 现代网络管理标准:支持新特性,如网络命名空间(namespace)、多路径路由等。
    • 工具整合:单个工具(如 ip)涵盖多个功能(如管理 IP 地址、路由、链路等)。
    • 性能优越:直接与内核交互,效率高。
    • 跨协议支持:支持 IPv4、IPv6、SCTP、DCCP 等。
    • Ubuntu系统内置

⏹两套工具集对比

功能iproute2 命令net-tools 命令
查看接口信息ip link showifconfig
启用/禁用接口ip link set dev eth0 up/downifconfig eth0 up/down
查看 IP 地址ip addr showifconfig
添加 IP 地址ip addr add 192.168.1.1/24 dev eth0ifconfig eth0 192.168.1.1 netmask 255.255.255.0
删除 IP 地址ip addr del 192.168.1.1/24 dev eth0不支持直接删除
查看路由表ip route showroute -n
添加/删除路由ip route add/del ...route add/del ...
查看套接字信息ss -tulnnetstat -tuln
查看 ARP 表ip neigh showarp -a

⇓⇓⇓下图来源于网络工程师波哥⇓⇓⇓

在这里插入图片描述


一. ping

⏹测试网络连通性

  • ping 会连续发送 ICMP 数据包,直到被手动中断(通常按 Ctrl+C)。
  • 默认每秒发送一个数据包,显示结果包括往返时间(RTT)、数据包丢失率等信息。
ping www.example.com
选项功能示例
-c <次数>指定发送数据包的数量ping -c 5 www.example.com
-i <间隔>设置每次发送数据包的时间间隔(默认 1 秒)ping -i 0.5 www.example.com
-w <时间>设置最大等待时间(秒)ping -w 10 www.example.com
-s <大小>指定 ICMP 数据包的大小(字节)ping -s 128 www.example.com
-t <值>设置 IP 数据包的 TTL(Time to Live)ping -t 64 www.example.com
-4强制使用 IPv4ping -4 www.example.com
-6强制使用 IPv6ping -6 www.example.com

💥注意事项
一些服务器为了安全性可能禁用了 ICMP 协议(不响应 ping 请求),但这并不一定说明网络有问题。


二. ip命令

⏹在 Linux 系统中,ip 命令是 iproute2 工具集中最重要的网络管理工具之一,用于查看和管理网络接口、地址、路由等网络配置。
它功能强大,已经取代了许多传统的网络命令(如 ifconfig、route、arp 等)。

⏹基本用法

  • OPTIONS:命令的全局选项(如 -4、-6,表示 IPv4 或 IPv6)
  • OBJECT:操作的网络对象(如 addr、link、route)
  • COMMAND:对象的具体操作(如 add、del、show)
ip [OPTIONS] OBJECT {COMMAND | help}

2.1 ip address

⏹查看所有接口的IP地址

# 完整写法
ip address show
# 简写
ip addr

⏹简洁的查看模式 → ip -br addr

  • 第1列:接口名称
    • lo:这是回环接口(loopback interface),用于本地通信,通常仅限于 127.0.0.1 地址。
    • ens33:这是物理或虚拟网络接口的名称,具体名字因系统和网络适配器配置而异。这里指的是一块以太网接口。
  • 第2列:接口状态
    • UNKNOWN:接口的状态未知,通常这是回环接口的默认状态。
    • UP:接口处于激活状态,能够发送和接收网络流量。
  • 第3列:IP 地址信息
    • ⭕IPv4 地址

      • 127.0.0.1/8:lo 的 IPv4 地址,是本地回环地址,子网掩码为 /8(即子网范围为 127.0.0.0 至 127.255.255.255)。
      • 192.168.118.136/24:ens33 的 IPv4 地址,是局域网中的地址,子网掩码为 /24(即子网范围为 192.168.118.0 至 192.168.118.255)。
    • ⭕IPv6 地址

      • ::1/128:lo 的 IPv6 地址,是本地回环地址,子网掩码为 /128,即只包含自身。
      • fe80::20c:29ff:fe86:f265/64:ens33 的 IPv6 链路本地地址(link-local address),作用域是当前链接,子网掩码为 /64
    • ⭕metric

      • metric 是路由表中用于决定路径优先级的一个值。它在网络中主要用于路由选择。
        多个路由指向同一个目标时,metric 值较低的路由优先被选择。
      • 仅部分接口包含
      • metric 100:网络接口的优先级,值越小优先级越高(通常用于路由选择时)。
apluser@ubuntu24-01:~$ ip -br addr
lo               UNKNOWN        127.0.0.1/8 ::1/128
ens33            UP             192.168.118.136/24 metric 100 fe80::20c:29ff:fe86:f265/64

⏹仅显示 IPv4 地址

ip -4 addr

⏹仅显示 IPv6 地址

ip -6 addr

2.2 ip route

ip route 是 Linux 系统中用于查看和管理路由表的命令。路由表决定了网络流量如何被发送到目标地址。通过 ip route,可以

  • 查看当前的路由信息
  • 添加或修改路由规则
  • 以及优化网络连接。

⏹基本概念

  • 路由表
    • 路由表存储了从主机到不同网络的路径。
    • 每条路由记录包含目标网络、网关(下一跳)、子网掩码、网络接口等信息。
  • 默认网关
    • 如果目标地址不在任何已知的子网中,流量会被发送到默认网关。

⏹用法示例

  • 默认路由:将未知目标的流量发送到网关 192.168.118.2。
  • 子网路由:通过本地子网 192.168.118.0/24 内的设备时,直接通过接口 ens33 发送,无需网关。
  • 网关路由:网关 192.168.118.2 是通过 ens33 接口直接访问的设备。

主机当前网络配置正常,主要通过网关 192.168.118.2 和外部通信,同时能与 192.168.118.0/24 子网中的其他设备直接通信。

apluser@ubuntu24-01:~$ ip route show
default via 192.168.118.2 dev ens33 proto dhcp src 192.168.118.136 metric 100
192.168.118.0/24 dev ens33 proto kernel scope link src 192.168.118.136 metric 100
192.168.118.2 dev ens33 proto dhcp scope link src 192.168.118.136 metric 100

  • default:表示默认路由,当目标地址无法匹配其他更具体的路由时,流量将使用此路由。
  • via 192.168.118.2:表示流量会通过网关(网关 IP 地址是 192.168.118.2)发送。
  • dev ens33:指定通过网络接口 ens33 发送数据。
  • proto dhcp:表示这条路由是通过 DHCP 动态分配的。
  • src 192.168.118.136:表示默认使用源地址(本机的IP地址) 192.168.118.136
  • metric 100:表示路由的优先级,数值越小优先级越高。这里 100 是一个默认的路由优先级值。
  • 👉这是系统的默认路由,所有不匹配其他路由表规则的流量会通过网关 192.168.118.2,从接口 ens33 发出。👈
default via 192.168.118.2 dev ens33 proto dhcp src 192.168.118.136 metric 100
  • 192.168.118.0/24:表示这是一个子网路由,负责 192.168.118.0192.168.118.255 之间的地址。
  • dev ens33:数据包通过 ens33 接口发送。
  • proto kernel:表示这是由内核自动添加的路由。
  • scope link:路由的作用域是本地链路(即只能到达本地子网中的设备)。
  • src 192.168.118.136:本接口的源地址是 192.168.118.136
  • metric 100:路由优先级是 100。
  • 👉这是本地子网的路由,流量目标是同一子网的设备时,直接通过 ens33 接口发送,不需要经过网关。👈
192.168.118.0/24 dev ens33 proto kernel scope link src 192.168.118.136 metric 100
  • 192.168.118.2:表示这是到网关 192.168.118.2 的路由。
  • dev ens33:通过 ens33 接口发送数据。
  • proto dhcp:这条路由由 DHCP 动态配置。
  • scope link:作用域是本地链路。
  • src 192.168.118.136:使用 192.168.118.136 作为源地址。
  • metric 100:路由优先级是 100。
  • 👉这是到网关设备 192.168.118.2 的路由,通过接口 ens33 发出数据。👈
192.168.118.2 dev ens33 proto dhcp scope link src 192.168.118.136 metric 100

2.3 ip neighbour

ip neighbour命令用于显示当前网络接口的邻居表(ARP 表或 NDP 表),它列出了本机网络接口与其直接连接的设备之间的映射关系,同时显示了与这些网络设备的通信状态。
例如:

  • IP 地址
  • 设备接口
  • 硬件地址(MAC 地址)
  • 网络邻居条目的状态

ip neighbour 是现代系统中管理邻居条目的工具,替代了传统的 arp 命令。

⏹示例

apluser@ubuntu24-01:~$ ip neighbour
192.168.118.2 dev ens33 lladdr 00:50:56:ea:9e:5f STALE
192.168.118.1 dev ens33 lladdr 00:50:56:c0:00:08 REACHABLE
192.168.118.254 dev ens33 lladdr 00:50:56:ec:2c:8b STALE
  • 192.168.118.2:网络邻居设备的 IP 地址。
  • dev ens33:表示邻居设备是通过网络接口 ens33 访问的。
  • lladdr 00:50:56:ea:9e:5f:邻居设备的硬件地址(MAC 地址)。
  • STALE:表示邻居状态为“陈旧”,系统已经知道该设备的 MAC 地址,但最近没有与其通信。如果需要时,系统会重新验证它。
192.168.118.2 dev ens33 lladdr 00:50:56:ea:9e:5f STALE
  • 192.168.118.1:邻居设备的 IP 地址。
  • dev ens33:通过接口 ens33 访问。
  • lladdr 00:50:56:c0:00:08:设备的 MAC 地址。
  • REACHABLE:表示邻居设备是可达的,最近系统已经成功与其通信。
192.168.118.1 dev ens33 lladdr 00:50:56:c0:00:08 REACHABLE

三. traceroute

traceroute 是一个网络诊断工具,用于显示从本地主机到目标主机之间的路径及经过的所有中间节点(路由器或设备)。
该命令会显示中间的路由器或网关,并提供每一跳的延迟信息,是排查网络问题和了解网络路径的重要工具。

  • -I:使用 ICMP Echo 请求(类似 ping),代替默认的 UDP 数据包。
  • 如果 traceroute 显示 *,可能是以下原因
    • 路由器禁用了 ICMP 响应。
    • 数据包被防火墙阻拦。
    • TTL 已到达但没有返回响应。
    • 遇到防火墙阻拦时,可以尝试 -T 使用 TCP 探测。
root@ubuntu24-01:~# traceroute -I www.baidu.com
traceroute to www.baidu.com (119.63.197.151), 30 hops max, 60 byte packets1  _gateway (192.168.118.2)  0.079 ms  0.046 ms *2  * * *3  * * *4  * * *5  * * *6  * * *7  * * *8  * * *9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  119.63.197.151 (119.63.197.151)  7.820 ms  7.796 ms  7.772 ms

四. DNS查询

nslookupdig是linux系统中用于查询DNS的命令行工具。

特性nslookupdig
复杂度简单,适合快速查询功能强大,适合高级用户
输出详细信息较少,仅限查询结果输出完整的 DNS 消息结构
记录类型支持支持,但不如 dig 强大支持多种记录类型和自定义查询
脚本支持较弱,输出格式固定较强,支持自定义输出
可用性默认内置于 Windows 和 Unix通常需要额外安装(如 bind-utils

4.1 nslookup

  • nslookup 是一个命令行工具,用于查询域名系统(DNS)记录。
  • 允许你检查域名到 IP 地址的解析、IP 地址到域名的反向解析,以及其他 DNS 信息。
apluser@ubuntu24-01:~$ nslookup www.google.com
Server:         127.0.0.53
Address:        127.0.0.53#53Non-authoritative answer:
Name:   www.google.com
Address: 142.250.199.100
Name:   www.google.com
Address: 2404:6800:4004:823::2004

4.2 dig

dig(Domain Information Groper)是一个功能更强大的工具,用于查询 DNS 信息。它能显示更多详细信息,比如

  • DNS 消息头、
  • TTL、
  • 查询时间

是网络管理员的首选工具。

⏹dig命令示例

apluser@ubuntu24-01:~$ dig www.google.com; <<>> DiG 9.18.28-0ubuntu0.24.04.1-Ubuntu <<>> www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44293
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 9;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;www.google.com.                        IN      A;; ANSWER SECTION:
www.google.com.         5       IN      A       172.217.31.132;; AUTHORITY SECTION:
google.com.             5       IN      NS      ns1.google.com.
google.com.             5       IN      NS      ns3.google.com.
google.com.             5       IN      NS      ns2.google.com.
google.com.             5       IN      NS      ns4.google.com.;; ADDITIONAL SECTION:
ns1.google.com.         5       IN      AAAA    2001:4860:4802:32::a
ns2.google.com.         5       IN      AAAA    2001:4860:4802:34::a
ns3.google.com.         5       IN      AAAA    2001:4860:4802:36::a
ns4.google.com.         5       IN      AAAA    2001:4860:4802:38::a
ns1.google.com.         5       IN      A       216.239.32.10
ns2.google.com.         5       IN      A       216.239.34.10
ns3.google.com.         5       IN      A       216.239.36.10
ns4.google.com.         5       IN      A       216.239.38.10;; Query time: 8 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Sun Dec 22 11:40:12 UTC 2024
;; MSG SIZE  rcvd: 307

⏹只想获取查询结果而忽略其他信息

apluser@ubuntu24-01:~$ dig +short www.google.com
142.251.42.132

五. ss 查看网络连接状态

ss 是 Linux 系统上一个强大的命令行工具,用于显示套接字统计信息。
它的功能类似于传统的 netstat,但性能更高,且支持更多功能。
ssiproute2 工具包的一部分,适用于查看网络连接状态、套接字信息和网络统计数据。

  • -l:仅显示监听的套接字。
  • -t:显示 TCP 连接。
apluser@ubuntu24-01:~$ ss -lt
State     Recv-Q     Send-Q     Local Address:Port        Peer Address:Port   Process
LISTEN    0          4096       127.0.0.53%lo:domain           0.0.0.0:*
LISTEN    0          4096          127.0.0.54:domain           0.0.0.0:*
LISTEN    0          4096                   *:ssh                    *:*
apluser@ubuntu24-01:~$

⏹仅显示状态为已建立的 TCP 连接

ss -t state ESTABLISHED

⏹配合 watch 命令实时监控

watch -n 1 ss -t state ESTABLISHED

⏹显示所有源端口为 80 的 TCP 连接

  • sport(source port):表示源端口。
ss -t sport = :80

⏹显示所有目标端口为 443 的 TCP 连接

  • dport(destination port):表示目标端口。
ss -t dport = :443

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/63756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jenkins持续集成部署——jenkins安装

前言 Jenkins 是一个开源的自动化服务器&#xff0c;主要用于持续集成&#xff08;CI&#xff09;和持续交付&#xff08;CD&#xff09;。它为软件开发团队提供了一个易于使用的平台来自动化构建、测试和部署应用程序的过程。 Jenkins 主要功能 1. 持续集成 (CI) 自动构建…

PYG - Cora数据集加载 (自动加载+手动实现)

本文从Cora的例子来展示PYG如何加载图数据集。 Cora 是一个小型的有标注的图数据集&#xff0c;包含以下内容&#xff1a; data.x&#xff1a;2708 个节点&#xff08;即 2708 篇论文&#xff09;&#xff0c;每个节点有 1433 个特征&#xff0c;形状为 (2708, 1433)。data.ed…

机器学习基础算法 (二)-逻辑回归

python 环境的配置参考 从零开始&#xff1a;Python 环境搭建与工具配置 逻辑回归是一种用于解决二分类问题的机器学习算法&#xff0c;它可以预测输入数据属于某个类别的概率。本文将详细介绍逻辑回归的原理、Python 实现、模型评估和调优&#xff0c;并结合垃圾邮件分类案例进…

BiTCN-BiGRU基于双向时间卷积网络结合双向门控循环单元的数据多特征分类预测(多输入单输出)

Matlab实现BiTCN-BiGRU基于双向时间卷积网络结合双向门控循环单元的数据多特征分类预测&#xff08;多输入单输出&#xff09; 目录 Matlab实现BiTCN-BiGRU基于双向时间卷积网络结合双向门控循环单元的数据多特征分类预测&#xff08;多输入单输出&#xff09;分类效果基本描述…

51c大模型~合集94

我自己的原文哦~ https://blog.51cto.com/whaosoft/12897659 #D(R,O) Grasp 重塑跨智能体灵巧手抓取&#xff0c;NUS邵林团队提出全新交互式表征&#xff0c;斩获CoRL Workshop最佳机器人论文奖 本文的作者均来自新加坡国立大学 LinS Lab。本文的共同第一作者为上海交通大…

【大学英语】英语范文十八篇,书信,议论文,材料分析

关注作者了解更多 我的其他CSDN专栏 过程控制系统 工程测试技术 虚拟仪器技术 可编程控制器 工业现场总线 数字图像处理 智能控制 传感器技术 嵌入式系统 复变函数与积分变换 单片机原理 线性代数 大学物理 热工与工程流体力学 数字信号处理 光电融合集成电路…

一起学Git【第一节:Git的安装】

Git是什么&#xff1f; Git是什么&#xff1f;相信大家点击进来已经有了初步的认识&#xff0c;这里就简单的进行介绍。 Git是一个开源的分布式版本控制系统&#xff0c;由Linus Torvalds创建&#xff0c;用于有效、高速地处理从小到大的项目版本管理。Git是目前世界上最流行…

【day11】面向对象编程进阶(继承)

概述 本文深入探讨面向对象编程的核心概念&#xff0c;包括继承、方法重写、this和super关键字的使用&#xff0c;以及抽象类和方法的定义与实现。通过本文的学习&#xff0c;你将能够&#xff1a; 理解继承的优势。掌握继承的使用方法。了解继承后成员变量和成员方法的访问特…

随手记:小程序兼容后台的wangEditor富文本配置链接

场景&#xff1a; 在后台配置wangEditor富文本&#xff0c;可以文字配置链接&#xff0c;图片配置链接&#xff0c;产生的json格式为&#xff1a; 例子&#xff1a; <h1><a href"https://uniapp.dcloud.net.cn/" target"_blank"><span sty…

6.8 Newman自动化运行Postman测试集

欢迎大家订阅【软件测试】 专栏&#xff0c;开启你的软件测试学习之旅&#xff01; 文章目录 1 安装Node.js2 安装Newman3 使用Newman运行Postman测试集3.1 导出Postman集合3.2 使用Newman运行集合3.3 Newman常用参数3.4 Newman报告格式 4 使用定时任务自动化执行脚本4.1 编写B…

计算机网络之王道考研读书笔记-2

第 2 章 物理层 2.1 通信基础 2.1.1 基本概念 1.数据、信号与码元 通信的目的是传输信息。数据是指传送信息的实体。信号则是数据的电气或电磁表现&#xff0c;是数据在传输过程中的存在形式。码元是数字通信中数字信号的计量单位&#xff0c;这个时长内的信号称为 k 进制码…

法规标准-C-NCAP评测标准解析(2024版)

文章目录 什么是C-NCAP&#xff1f;C-NCAP 评测标准C-NCAP评测维度三大维度的评测场景及对应分数评星标准 自动驾驶相关评测场景评测方法及评测标准AEB VRU——评测内容(测什么&#xff1f;)AEB VRU——评测方法(怎么测&#xff1f;)车辆直行与前方纵向行走的行人测试场景&…

第十七届山东省职业院校技能大赛 中职组“网络安全”赛项任务书正式赛题

第十七届山东省职业院校技能大赛 中职组“网络安全”赛项任务书-A 目录 一、竞赛阶段 二、竞赛任务书内容 &#xff08;一&#xff09;拓扑图 &#xff08;二&#xff09;模块A 基础设施设置与安全加固(200分) &#xff08;三&#xff09;B模块安全事件响应/网络安全数据取证/…

Halcon例程代码解读:安全环检测(附源码|图像下载链接)

安全环检测核心思路与代码详解 项目目标 本项目的目标是检测图像中的安全环位置和方向。通过形状匹配技术&#xff0c;从一张模型图像中提取安全环的特征&#xff0c;并在后续图像中识别多个实例&#xff0c;完成检测和方向标定。 实现思路 安全环检测分为以下核心步骤&…

Java——多线程进阶知识

目录 一、常见的锁策略 乐观锁VS悲观锁 读写锁 重量级锁VS轻量级锁 总结&#xff1a; 自旋锁&#xff08;Spin Lock&#xff09; 公平锁VS非公平锁 可重入锁VS不可重入锁 二、CAS 何为CAS CAS有哪些应用 1&#xff09;实现原子类 2&#xff09;实现自旋锁 CAS的ABA…

达梦 本地编码:PG_GBK, 导入文件编码:PG_UTF8错误

问题 达梦 本地编码&#xff1a;PG_GBK, 导入文件编码&#xff1a;PG_UTF8错误 解决 右键管理服务器 查看配置 新建一个数据库实例&#xff0c;配置跟之前的保持一致 新建一个用户&#xff0c;跟以前的用户名一样 在用户上&#xff0c;右键导入&#xff0c;选择dmp的位置 导…

深度学习卷积神经网络CNN之MobileNet模型网络模型详解说明(超详细理论篇)

1.MobileNet背景 2.MobileNet V1论文 3. MobileNett改进史 4. MobileNet模型结构 5. 特点&#xff08;超详细创新、优缺点及新知识点&#xff09; 一、MobileNet背景 随着移动设备的普及&#xff0c;深度学习模型的应用场景逐渐扩展至移动端和嵌入式设备。然而&#xff0c;传统…

垂起固定翼无人机大面积森林草原巡检技术详解

垂起固定翼无人机大面积森林草原巡检技术是一种高效、精准的监测手段&#xff0c;以下是对该技术的详细解析&#xff1a; 一、垂起固定翼无人机技术特点 垂起固定翼无人机结合了多旋翼和固定翼无人机的优点&#xff0c;具备垂直起降、飞行距离长、速度快、高度高等特点。这种无…

kubernates实战

使用k8s来部署tomcat 1、创建一个部署&#xff0c;并指定镜像地址 kubectl create deployment tomcat6 --imagetomcat:6.0.53-jre82、查看部署pod状态 kubectl get pods # 获取default名称空间下的pods kubectl get pods --all-namespaces # 获取所有名称空间下的pods kubect…

数据挖掘之认识数据

在数据挖掘过程中&#xff0c;数据的认识是非常重要的一步&#xff0c;它为后续的数据分析、建模、特征选择等工作奠定基础。以鸢尾花数据集&#xff08;Iris Dataset&#xff09;数据集之鸢尾花数据集&#xff08;Iris Dataset&#xff09;-CSDN博客为例&#xff0c;下面将介绍…