【Linux】网络相关的命令
目录
① ip addr show
② ip route show
③ iptables -nvL
④ ping -I enx00e04c6666c0 192.168.1.100
⑤ ip route get 192.168.1.100
⑥ sudo ip addr add dev enx00e04c6666c0 192.168.1.101/24
⑦ ifconfig
⑧ netstat
⑨ traceroute
⑩ nslookup
① ip addr show
用于显示网络接口的详细信息。这条命令可以帮助用户查看系统的网络配置,包括IP地址、子网掩码、MAC地址、网络接口的状态(如UP或DOWN)等重要信息。
每个网络接口通常会有以下几项关键数据:
▲接口名称:如eth0、wlan0、lo等,分别代表以太网接口、无线网络接口和回环接口。
▲状态:表明接口是否正在运行(UP)或者关闭(DOWN)。
▲硬件地址:即MAC地址,用于在物理层唯一标识网络设备。
▲IP地址:分配给接口的IPv4或IPv6地址。
▲广播地址:在局域网内广播数据包的目标地址。
▲子网掩码:用于确定IP地址的网络部分和主机部分。
② ip route show
主要用于显示当前系统的路由表信息。路由表是操作系统用来决定数据包转发路径的一个数据库,它包含了到达网络中不同目的地的路由信息。通过执行 ip route show 命令,可以查看系统是如何确定数据包的下一跳地址,以及如何将数据包发送到目的网络的。
■当在终端中运行 ip route show 命令时,系统会列出所有的路由规则,包括但不限于:
▲默认路由:这是系统用于发送到未知目的地的数据包的路由。默认路由通常指向一个网关,所有未被其他路由规则匹配的数据包都会被转发到这个网关。
▲直连路由:这些路由对应于本地网络接口直接连接的网络。对于这些网络,数据包可以直接发送到目标,无需经过任何中间路由器。
▲静态路由:这些是由管理员手动配置的路由,用于指定特定目的地的固定路径。静态路由在小型网络或特定需求的场景下非常有用。
▲动态路由:这些路由是通过动态路由协议(如RIP、OSPF或BGP)自动发现的。动态路由允许网络中的路由器自动交换路由信息,以便在网络拓扑发生变化时自动更新路由表。
示例:
default via 192.168.1.1 dev eth0 proto dhcp
默认路由通过192.168.1.1这个网关,使用eth0接口,并且这个网关是通过DHCP协议获得的。
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.2
直连路由192.168.1.0/24网络,数据包可以通过eth0接口直接发送,源地址是192.168.1.2。
169.254.0.0/16 dev eth0 scope link metric 1002
169.254.0.0/16网络的路由也是通过eth0接口,但其优先级较低,因为metric值为1002。
③ iptables -nvL
用于列出(List)当前系统中设置的所有iptables防火墙规则。这个命令可以帮助系统管理员检查防火墙的配置,确保网络流量按照预期的方式被过滤和处理。
■ 命令解析
iptables:是Linux中用于管理网络数据包过滤规则的工具。
-n:选项表示显示数字形式的地址和端口,而不是尝试解析它们为域名或服务名。
-v:选项表示详细模式,它会显示额外的信息,如数据包和字节的计数。
-L:选项表示列出(List)当前的iptables规则。
■ 当运行 iptables -nvL 命令时,系统会显示所有链(Chain)的规则列表,包括但不限于:
▲INPUT:用于处理进入本地系统的所有数据包。
▲FORWARD:用于处理在系统间转发的数据包。
▲OUTPUT:用于处理从本地系统发出的数据包。
▲PREROUTING 和 POSTROUTING:这两个链是NAT(Network Address Translation)规则的一部分,分别用于在数据包到达之前和离开之后进行地址转换。
■ 输出通常会包含以下信息:
▲链名:如INPUT、FORWARD、OUTPUT等。
▲策略:默认情况下,如果没有任何规则匹配数据包,iptables会根据链的默认策略(如ACCEPT或DROP)来处理数据包。
▲数据包计数:通过该规则的数据包数量。
▲字节计数:通过该规则的数据总量。
▲目标:规则的最终动作,如ACCEPT、DROP、REJECT等。
▲协议:数据包的协议类型,如TCP、UDP、ICMP等。
▲源地址:数据包的源IP地址。
▲目标地址:数据包的目标IP地址。
▲端口号:数据包的源端口和目标端口。
▲匹配条件:数据包必须满足的其他条件,如特定的标志位或数据包长度。
④ ping -I enx00e04c6666c0 192.168.1.100
在Linux系统中使用ping工具来测试从特定网络接口到指定IP地址的网络连通性。
■ 解析这个命令:
▲ping:这是一个用于检查网络设备之间连通性的标准工具。它通过向目标主机发送ICMP(Internet Control Message Protocol)回显请求(Echo Request)数据包,然后等待接收回显应答(Echo Reply)数据包,以此来判断网络的可达性和响应时间。
▲-I enx00e04c6666c0:用于指定ping命令应该从哪个网络接口发送数据包。这里的enx00e04c6666c0是网络接口的名字,通常反映了接口的类型和MAC地址的一部分。通过这个选项,可以确保ping请求是从正确的接口发出的,这对于有多块网卡或多接口的系统尤其重要。
▲192.168.1.100:这是ping命令的目标地址,即想要测试连通性的远程主机的IP地址。在这个例子中,目标是位于192.168.1.x子网中的某台设备。
■ 当执行这个命令时,系统会从名为enx00e04c6666c0的网络接口发送ICMP回显请求数据包到IP地址为192.168.1.100的主机。
■ 输出中会显示从目标主机接收到的回显应答数据包的统计信息,包括数据包大小、序列号、TTL(Time To Live)值和往返时间(time),这些信息可以帮助判断网络延迟和丢包情况。如果没有收到回应,可能是因为目标主机的防火墙阻止了ICMP数据包,或者网络连接有问题。在这种情况下,将看到类似“Request timed out”或“Destination Host Unreachable”的错误消息。
⑤ ip route get 192.168.1.100
用于查询达到特定目标IP地址(在这个例子中是192.168.1.100)的最佳路由路径。
■ 相比于ip route show,这个命令提供了更详细的路由信息,包括源地址、下一跳地址、出站接口、路由的来源以及其他细节,这些信息对于网络诊断和理解数据包如何在网络中传输非常重要。
■ 当执行ip route get 192.168.1.100时,系统会返回一条或多条路由信息,具体取决于网络配置和路由表。输出通常包含以下信息:
▲源地址:系统将从哪个本地IP地址发送数据包。
▲下一跳地址:数据包离开本地网络后的下一个目的地IP地址。
▲出站接口:数据包将从哪个网络接口发送出去。
▲路由来源:路由条目是通过哪种方式获得的,比如静态配置、动态路由协议或直连网络。
▲标记:与路由相关的额外信息,如路由的优先级或标记。
⑥ sudo ip addr add dev enx00e04c6666c0 192.168.1.101/24
在Linux系统中给指定的网络接口分配一个新的IP地址。
■ 解析这个命令:
▲sudo:权限提升工具,允许普通用户执行需要root权限的命令。这是因为修改网络配置通常需要超级用户权限。
▲ip addr add:ip命令的子命令,用于添加新的网络地址到网络接口。ip命令是Linux中用于网络配置的强大工具,可以替代旧的ifconfig命令。
▲dev enx00e04c6666c0:指定要操作的网络接口。enx00e04c6666c0是网络接口的名称,它通常反映了接口的类型和MAC地址的一部分。
▲192.168.1.101/24:要添加的新IP地址及其子网掩码。网络前缀为192.168.1.,而后面的部分是主机地址。
■ 当执行这个命令时,系统会在enx00e04c6666c0网络接口上添加一个新的IP地址192.168.1.101,并且子网掩码为255.255.255.0(这等价于/24)。这意味着该接口现在可以使用这个地址进行网络通信,包括发送和接收数据包。
■ 需要注意的是,修改网络接口的配置可能会影响现有的网络连接,所以在生产环境中进行此类操作时应格外小心。
⑦ ifconfig
ifconfig:虽然在某些系统中可能被ip命令取代,但仍然可以用于显示和配置网络接口的基本信息。
■ ifconfig emac0 192.168.1.100
用于在Linux系统中手动配置网络接口emac0的IP地址为192.168.1.100。
■ 命令解析
▲ifconfig:是一个用于配置和显示网络接口的命令行工具。
▲emac0:是要配置的网络接口名称。在不同的系统中,网络接口的命名可能会有所不同,如eth0、enp0s3等。
▲192.168.1.100:是分配给emac0接口的IP地址。
■ 当执行ifconfig emac0 192.168.1.100时,emac0接口的IP地址将被设置为192.168.1.100。但是,需要注意的是,仅仅设置IP地址可能不足以使网络接口完全可用。为了使网络接口正常工作,可能还需要做以下几步:
▲设置子网掩码:通常需要与IP地址一起设置子网掩码,例如ifconfig emac0 192.168.1.100 netmask 255.255.255.0。或者使用CIDR表示法,如ifconfig emac0 192.168.1.100/24。
▲激活接口:确保网络接口处于激活状态,使用ifconfig emac0 up来激活接口。
▲配置默认网关:为了让系统能够访问外部网络,可能需要配置默认网关,这通常通过route或ip route命令完成。
▲保存配置:如果想要这些配置在系统重启后仍然生效,需要将它们保存到系统配置文件中,这通常涉及到编辑/etc/network/interfaces或使用网络管理工具如NetworkManager。
⑧ netstat
显示网络连接、路由表、接口统计信息等。
■ netstat 命令有许多选项,以下是一些最常用的:
▲-a:显示所有活动的连接,包括监听连接。
▲-n:以数字形式显示地址和端口号,不进行域名和协议名称的解析。
▲-l:只显示监听状态的连接。
▲-p:显示连接所属的程序名称或进程ID。
▲-t:只显示TCP连接。
▲-u:只显示UDP连接。
▲-r:显示路由表。
⑨ traceroute
跟踪数据包到达目标主机的路径,显示沿途经过的路由器。
■ 在命令行中使用traceroute的基本语法
traceroute [选项] 目标主机名或IP地址
常用选项
▲-n:使用数字形式显示主机名,不进行DNS解析。
▲-m 跳数:设置最大跳数,超过这个跳数的数据包将被丢弃。
▲-w 超时秒数:设置等待每次回复的超时时间。
▲-q 数据包数:设置每个TTL值下发送的数据包数量。
⑩ nslookup
查询DNS服务器,获取域名对应的IP地址。
■ 在命令行中使用nslookup的基本语法如下:
nslookup [选项] [hostname]
常用选项
▲-query=TYPE:指定查询的DNS记录类型,如A(IPv4地址)、AAAA(IPv6地址)、MX(邮件交换)、NS(名称服务器)等。
▲server IP:指定DNS查询应通过的特定DNS服务器。
至此,本文分享的内容就结束啦。
相关文章:

【Linux】网络相关的命令
目录 ① ip addr show ② ip route show ③ iptables -nvL ④ ping -I enx00e04c6666c0 192.168.1.100 ⑤ ip route get 192.168.1.100 ⑥ sudo ip addr add dev enx00e04c6666c0 192.168.1.101/24 ⑦ ifconfig ⑧ netstat ⑨ traceroute ⑩ nslookup ① ip addr sho…...

leetcode哈希表(五)-四数相加II
题目 454.四数相加II 给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: 0 < i, j, k, l < nnums1[i] nums2[j] nums3[k] nums4[l] 0 示例 1: 输入&…...

Java学习路线:Maven(一)认识Maven
目录 认识Maven 新建Maven文件 导入依赖 认识Maven Maven是一个Java的项目管理工具,通过Maven,我们可以实现: 项目自动构建,包括代码的编译、测试、打包、安装等依赖管理,快速完成依赖的导入 在学习Maven之前&…...

【深度学习】— 多输入多输出通道、多通道输入的卷积、多输出通道、1×1 卷积层、汇聚层、多通道汇聚层
【深度学习】— 多输入多输出通道、多通道输入的卷积、多输出通道、11 卷积层、汇聚层、多通道汇聚层 多输入多输出通道多通道输入的卷积示例:多通道的二维互相关运算 多输出通道实现多通道输出的互相关运算 11 卷积层11 卷积的作用 使用全连接层实现 11 卷积小结 …...

java mapper 的 xml讲解
<?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace"com.bnc.s12.mapper.GoodaCateDT…...

全面解析:区块链技术及其应用
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 全面解析:区块链技术及其应用 文章目录 全面解析:区块链技术及其应用什么是区块链区块链的工作原理1. 分…...

python基础学习笔记
本文类比c语言讲解python 一.变量和类型 前缀小知识: 注意:1.python写每一行代码时,结尾不需要 ; 这点是和c语言有很大区别的 2.代码的缩进(就是每行代码前面的空格)是非常重要的后文会提到 1.定义变量 注意: 和C/C …...

【dvwa靶场:XSS系列】XSS (DOM) 低-中-高级别,通关啦
一、低级low 拼接的url样式: http://127.0.0.1/dvwa/vulnerabilities/xss_d/?default 拼接的新内容 <script>alert("假客套")</script> 二、中级middle 拼接的url样式: http://127.0.0.1/dvwa/vuln…...

ONLYOFFICE 8.2深度体验:高效协作与卓越性能的完美融合
📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀ONLYOFFICE 8.2 🔍引言📒1. ONLYOFFICE 产品简介📚2. 功能与特点🍁协作编辑 PDF🍂…...

Mac如何将多个pdf文件归并到一个
电脑:MacBook Pro M1 操作方式: very easy 选中想要归并的所有pdf文件,然后 右键 -> quick actions -> Create PDF 然后就可以看到将所选pdf文件归并为一个pdf的文件了...

LINUX下的Mysql:Mysql基础
目录 1.为什要有数据库 2.什么是数据库 3.LINUX下创建数据库的操作 4.LINUX创建表的操作 5.SQL语句的分类 6.Mysql的架构 1.为什要有数据库 直接用文件直接存储数据难道不行吗?非得搞个数据库呢? 首先用文件存储数据是没错,但是文件不方…...

自然语言处理方向学习建议
自然语言处理方向学习建议 自然语言处理(NLP)作为人工智能的一个重要分支,近年来在学术界和工业界都取得了显著的发展。作为即将或正在攻读博士学位的你,投身于NLP领域无疑是一个充满挑战与机遇的选择。以下是一些针对NLP方向学习…...

介绍一下如何生成随机数(c基础)
适合对象 c语言初学者 总结语言用色,个人强调用红色,注意为易错点,若有问题请告诉我谢谢。(建议通过目录观看)。一定要自己动手打代码。 rand函数 是生成随机数的函数,但实则是伪随机数。(即是同一个值) 格式 #include<st…...

24-11-1-读书笔记(三十一)-《契诃夫文集》(五)下([俄] 契诃夫 [译] 汝龙)生活乏味但不乏魅力。
文章目录 《契诃夫文集》(五)下([俄] 契诃夫 [译] 汝龙)生活乏味但不乏魅力。目录阅读笔记总结 《契诃夫文集》(五)下([俄] 契诃夫 [译] 汝龙)生活乏味但不乏魅力。 休息,…...

从“点”到“面”,热成像防爆手机如何为安全织就“透视网”?
市场上测温产品让人眼花缭乱,通过调研分析,小编发现测温枪占很高比重。但是,测温枪局限于显示单一数值信息,无法直观地展示物体的整体温度分布情况,而且几乎没有功能拓展能力。以AORO A23为代表的热成像防爆手机改变了…...

基于vue框架的的奶茶店预约订单系统3fb55(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
系统程序文件列表 项目功能:用户,奶茶分类,奶茶信息 开题报告内容 开题报告 题目:基于Vue框架的奶茶店预约订单系统开发 一、研究背景与意义 背景 随着饮品市场的蓬勃发展,奶茶店作为其中的重要组成部分,其业务量和顾客需求持…...

项目实战使用gitee
1.创建本地仓库 2.进行提交到本地仓库 创建仓库后在idea中会显示图标,点击绿色的√进行快速提交 3.绑定远程仓库 4.番外篇-创建gitee仓库 注意不要勾选其他...

数据结构--二叉树_链式(下)
实现链式结构二叉树 链式结构就是由一个一个的节点组成。 ⽤链表来表⽰⼀棵⼆叉树,即⽤链来指⽰元素的逻辑关系。 通常的⽅法是链表中每个结点由三个域组成,数据域和左右指针域,左右指针分别⽤来给出该结点左孩⼦和右孩⼦所在的链结点的存储…...

unity游戏开发之--人物打怪爆材料--拾进背包的实现思路
unity游戏开发之–人物打怪爆材料–拾进背包的实现思路 游戏实现:unity c# 1、敌人(怪物)的生命值和伤害系统 using UnityEngine; using System.Collections.Generic;public class Enemy : MonoBehaviour {[Header("基础属性")]…...

AWTK文件系统适配器更新-支持RT-Thread DFS POSIX接口
介绍 AWTK 文件系统适配器。 在嵌入式平台中,有时没有 POSIX 兼容的文件系统 API,需要把一些文件系统实现,包装成 AWTK 的 fs 接口。本项目提供一些常见文件系统的适配,目前支持的文件系统有: FATFS 主要用于访问 TF…...

C#如何快速获取P/Invoke方法签名
使用API函数已经好几年了,封装函数签名基本是参照MSDN上的文档,然后再做数据类型对应。 虽然有 pinvoke.net 这个网站,但基本很少使用。一方面是想多动手,另一方面是因为各种数据类型基本都用过了,都能自己在C#中 对应…...

CqEngine添加联合索引和复合唯一索引
一.实体类 Data public class CategoryT {private Integer id;private String oneCategory;private String twoCategory;private String createTime;private String updateTime;public String uniKey() {return oneCategory "/" twoCategory;} }二.集合 Suppress…...

基于matlab的SVPWM逆变器死区补偿算法仿真研究
背景介绍: 三相脉宽调制(pulse width modulation,PWM)电压源逆变器(voltage source inverter,VSI)的死区效应可导致电机相电压和相电流畸变、零电流钳位效应以及转矩和转速脉动,系统性能降低。为提高系统运行性能,对V…...

【网页设计】CSS 定位
目标 能够说出为什么要用定位能够说出定位的4种分类能够说出4种定位各自的特点能够说出为什么常用子绝父相布局能够写出淘宝轮播图布局能够说出显示隐藏的2种方式以及区别 1. 定位 1.1 为什么需要定位 提问: 以下情况使用标准流或者浮动能实现吗?1. …...

scala的属性访问权限
scala的属性访问权限有四种: 默认访问权限;protected访问权限;private访问权限;private[this]访问权限 package Test1104 //访问控制权限// 类的内部方法 伴生对象中的方法 类的外部(对象,访问)…...

QGIS:HCMGIS插件
插件GitHub地址:https://github.com/thangqd/HCMGIS。 以下对HCMGIS插件进行简单介绍,并演示如何进行地图数据下载。 插件简介 HCMGIS - Basemaps, Download OpenData, Batch Converter, VN-2000 Projections, and Field Calculation Utilities for QGI…...

Melty 主体流程图
┌───────────┐ │ 用户输入 │ └─────┬─────┘ │(自然语言或指令) │ ▼ ┌───────────┐ │ 自然语言处理 │ │ (NLU 模块)│ └─────┬─────┘ │ │ 解析用户意图 │ ▼ ┌─…...

【图像与点云融合教程(五)】海康相机 ROS2 多机分布式实时通信功能包
0. 前言 Github 仓库链接:Hikvision Camera ROS2 package 0.1 问题背景 上一篇[博客](【图像与点云融合教程(四)】海康相机 ROS2 功能包 - 古月居 (guyuehome.com))介绍了我开源的海康相机 ROS2 功能包,在本地机器上可以实时订…...

正则截取字符窜数字,字母,符号部分
Testvoid test20() {String str "BJRabG11325F9**0**";// 提取字母部分String letterPart str.replaceAll("[^a-zA-Z]", "");String noLetterPart str.replaceAll("[a-zA-Z]", "");System.out.println("字母部分&am…...

【ChatGPT】让ChatGPT生成跨语言翻译的精确提示
让ChatGPT生成跨语言翻译的精确提示 在跨语言交流中,为了确保翻译的准确性,生成精确的提示(Prompt)来指导ChatGPT翻译内容是至关重要的。无论是要处理复杂的技术术语、俚语,还是保持特定的语言风格,使用有…...