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

《Linux从小白到高手》理论篇:深入理解Linux的网络管理

今天继续宅家,闲来无事接着写。本篇详细深入介绍Linux的网络管理。
如你所知,在Linux中一切皆文件。网卡在 Linux 操作系统中用 ethX,是由 0 开始的正整数,比如 eth0、eth1… ethX。而普通猫和ADSL 的接口是 pppX,比如 ppp0 等。
在管理复杂网络方面,相较于其他绝大多数的闭源操作系统,Linux 操作系统是有极大的优势,修改配置文件,在几分钟就可以搞定。但闭源图形界面的操作系统就没有这么幸运了,可能需要反复切换图形化管理界面,还可能耗时误事。
涉及到配置网络接口、路由、防火墙、网络服务和安全、网络故障排除等多个方面。

网络接口配置

网络接口是连接到计算机的网络设备,如以太网卡。Linux提供了各种命令和配置文件,用于配置网络接口的IP地址、子网掩码、默认网关和DNS服务器等。
常用命令和工具:
ifconfig:用于显示和配置网络接口的信息。ifconfig在较新的系统中被ip命令取代,但在很多旧系统中仍然可用。
ip命令:新一代网络配置命令,用于显示和配置网络接口的信息,如IP地址、子网掩码等。
nmcli:NetworkManager命令行工具,用于管理和配置网络连接。
配置文件:
/etc/network/interfaces:较旧的Linux系统或Debian和Ubuntu等基于Debian的发行版中使用的网络配置文件。
/etc/sysconfig/network-scripts/ifcfg-:CentOS和Red Hat等基于RHEL的发行版中使用的网络配置文件。
2、路由配置
路由是决定网络数据包从源到目的地的路径。Linux中的路由表存储了网络的路由信息。通过配置路由表,可以添加、删除和修改路由条目,实现数据包转发和流量控制。
常用命令:
route:用于显示和配置内核的IP路由表。
ip route:ip命令的一部分,用于配置和管理路由表。
3、防火墙管理
Linux提供了多种工具来配置防火墙规则,以控制网络流量并保护系统免受恶意攻击。
常用工具:
iptables:用于配置Linux内核的网络包过滤规则。
nftables:iptables的继任者,提供了更高级的功能和性能。
firewalld:动态防火墙管理工具,提供了更高级的功能和图形化界面。
4、网络服务配置
Linux操作系统可以作为各种网络服务的服务器,如Web服务器(如Apache)、邮件服务器(如Postfix)、文件共享服务器(如Samba)等。网络管理员需要配置这些服务的参数和权限,以确保它们正常运行并满足特定需求。
5、网络安全管理
网络安全是网络管理的重要方面。Linux提供了各种安全功能和工具,如访问控制列表(ACL)、安全套接字层(SSL)、虚拟专用网络(VPN)等,以增强网络的安全性。网络管理员需要识别和应对潜在的安全威胁,并采取相应的措施加强系统安全。
6、网络监控和故障排除
Linux提供了多种工具来监控网络状态、诊断网络问题并进行故障排除。
常用工具:
ping:用于测试主机之间的网络连接。
traceroute/tracepath:用于显示数据包到达目标主机所经过的路由路径。
netstat/ss:用于显示网络连接、路由表、接口统计等网络相关信息。
tcpdump/wireshark:用于捕获和分析网络上的数据包。
7、图形化网络配置工具
Linux还提供了一些图形化工具来配置网络参数。
常用工具:
NetworkManager:提供图形化界面,允许用户轻松配置和管理网络接口、无线网络、VPN连接等。
GNOME Settings:在GNOME桌面环境中进行网络配置。
KDE NetworkManager:在KDE桌面环境中进行网络配置。
Wicd:轻量级的网络管理工具,适用于基于GTK的桌面环境。

Linux网络管理相关的常用操作

修改或者手动配置Ip地址,如将动态IP改成静态

  1. vim修改对应的网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改以下信息,设置成静态ip,(注意,具体的ip地址请根据你虚拟机的设置来定:

//修改以下内容
BOOTPROTO=static  //启用静态IP地址
ONBOOT=yes      //开机自动启用网络连接
//设置IP详细信息
IPADDR=192.168.100.10    //设置IP地址
NETMASK=255.255.255.0   //子网掩码
GATEWAY=192.168.100.1   //设置网关

2.保存文件并重启网络服务或者整个系统:

sudo systemctl restart network
// 或者重启整个系统
sudo reboot

在这里插入图片描述

管理网络服务

启动、停止和重启网络服务:
使用systemctl命令,例如:
启动网络服务:systemctl start network。
停止网络服务:systemctl stop network。
重启网络服务:systemctl restart network。
查看网络服务状态:
systemctl status network可以显示网络服务的当前状态,包括是否正在运行、启动时间、日志信息等。

测试网络连接

使用ping命令:
ping命令用于测试与其他主机的网络连接。例如:ping www.baidu.com将向指定的域名发送 ICMP 数据包,并显示响应时间和数据包丢失情况。
ping -c 可以指定发送的数据包数量,例如ping -c 5 192.168.1.1将向 IP 地址为 192.168.1.1 的主机发送 5 个数据包。
使用traceroute命令:
traceroute命令用于跟踪数据包从本地主机到目标主机的路径。例如:traceroute www.baidu.com将显示数据包经过的每个路由器的 IP 地址和响应时间。

设置路由

查看路由表:
route -n命令可以显示当前系统的路由表,包括目标网络、网关、子网掩码等信息。
添加静态路由:

route add -net <network-address> netmask <netmask> gw <gateway-address>

可以添加静态路由。例如:route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.2将添加一条到 192.168.2.0/24 网络的静态路由,网关为 192.168.1.2。
删除静态路由:

route del -net <network-address> netmask <netmask>

可以删除静态路由。例如:route del -net 192.168.2.0 netmask 255.255.255.0将删除上述添加的静态路由。

网络故障排除

查看网络日志:
系统的网络日志通常位于/var/log/目录下的特定文件中,如messages或syslog。可以查看这些日志文件以获取有关网络问题的信息。
使用网络诊断工具:
tcpdump:可以捕获网络数据包,用于分析网络通信问题。例如:tcpdump -i eth0可以捕获以太网接口eth0上的数据包。
nmap:网络扫描工具,可以用于检查网络上的主机和服务的可用性。例如:nmap 192.168.1.0/24可以扫描 192.168.1.0/24 网段中的主机。

tcpdump

tcpdump是一个强大的网络数据包捕获工具,tcpdump允许用户捕获和分析网络上传输的数据包。它可以捕获特定网络接口上的数据包,用于网络故障排除,安全分析,性能优化分析等。
在这里插入图片描述
1.基本捕获:
直接运行tcpdump,它将捕获指定网络接口上的所有数据包,并将其输出到终端。例如:tcpdump -i eth0将捕获以太网接口eth0上的数据包。
2. 过滤数据包:
tcpdump支持使用各种过滤条件来筛选数据包。例如,可以使用以下命令只捕获特定 IP 地址的数据包:tcpdump host 192.168.1.100。
可以使用其他过滤条件,如端口号(port 80表示捕获端口为 80 的数据包)、协议类型(tcp或udp)等。例如:tcpdump tcp port 80将捕获 TCP 协议且端口为 80 的数据包。
3. 保存捕获的数据包:
可以使用-w选项将捕获的数据包保存到文件中,以便后续分析。例如:tcpdump -i eth0 -w packets.pcap将捕获以太网接口eth0上的数据包并保存到packets.pcap文件中。
读取保存的数据包文件:
使用-r选项可以读取之前保存的数据包文件进行分析。例如:tcpdump -r packets.pcap。
4、输出格式
默认输出:
默认情况下,tcpdump的输出显示数据包的基本信息,包括时间戳、源 IP 地址和端口、目标 IP 地址和端口以及协议类型。例如:

 21 :23:45.678901 IP 192.168.1.100.5678 > 192.168.1.200.80: TCP ......

详细输出:
可以使用-v选项增加输出的详细程度,显示更多关于数据包的信息,如数据包的长度、标志位等。例如:tcpdump -v -i eth0。

本篇完结。
码字不易,宝贵经验分享不易,请各位支持原创,转载注明出处,多多关注作者,家人们的点赞和关注是我笔耕不辍的动力。

相关文章:

《Linux从小白到高手》理论篇:深入理解Linux的网络管理

今天继续宅家&#xff0c;闲来无事接着写。本篇详细深入介绍Linux的网络管理。 如你所知&#xff0c;在Linux中一切皆文件。网卡在 Linux 操作系统中用 ethX,是由 0 开始的正整数&#xff0c;比如 eth0、eth1… ethX。而普通猫和ADSL 的接口是 pppX&#xff0c;比如 ppp0 等。 …...

redis数据类型介绍

1. 字符串&#xff08;String&#xff09; 字符串是 Redis 中最基本的数据类型&#xff0c;它可以存储任何形式的字符串&#xff0c;包括文本、数字等。字符串类型的操作非常丰富&#xff0c;比如 SET、GET、INCR&#xff08;自增&#xff09;、DECR&#xff08;自减&#xff0…...

一张照片变换古风写真,Flux如何做到?

前言 解锁图像创作新体验&#xff1a;ComfyUI指南 在AI图像生成领域&#xff0c;ComfyUI 已成为不可忽视的力量。它是基于Stable Diffusion的图像生成工具&#xff0c;提供了一个节点式图形用户界面&#xff08;GUI&#xff09;&#xff0c;让用户可以通过简单的拖拽与配置来…...

医药行业的智能合同审查:大模型与AI赋能合规管理

随着医药行业的快速发展&#xff0c;尤其是在全球化背景下&#xff0c;企业在业务拓展、合作协议签订中需要处理大量复杂的合同。合同不仅是业务的法律保障&#xff0c;更是风险管理的重要工具。医药行业合同审查的复杂性源于其严格的合规性要求&#xff0c;包括与政府机构、研…...

幂等性接口实现

1、什么是幂等性 幂等&#xff08;idempotence&#xff09;&#xff0c;这个词源自数学&#xff0c;幂等性是数学中的一个概念&#xff0c;常见于抽象代数中。表达的是N次变换与1次变换的结果相同。简单来说&#xff0c;就是如果方法调用一次和调用多次产生的效果是相同的&…...

C++ 语言特性29 - 协程介绍

一&#xff1a;什么是协程 C20 引入了协程&#xff08;coroutine&#xff09;&#xff0c;这是 C 标准库中一个强大的新特性。协程是一种可以在执行中暂停并随后恢复的函数&#xff0c;允许程序在异步或并行场景下高效管理任务&#xff0c;而不需要传统的线程或复杂的回调机制。…...

[Day 84] 區塊鏈與人工智能的聯動應用:理論、技術與實踐

AI在公共安全中的應用實例 引言 隨著技術的進步&#xff0c;人工智能&#xff08;AI&#xff09;在公共安全領域的應用越來越廣泛。AI不僅能夠提高安全部門的工作效率&#xff0c;還能有效幫助預防和處理各類公共安全事件。從人臉識別、行為分析到災害預測&#xff0c;AI正在…...

八大排序--01冒泡排序

假设有一组数据 arr[]{2&#xff0c;0&#xff0c;3&#xff0c;4&#xff0c;5&#xff0c;7} 方法&#xff1a;开辟两个指针&#xff0c;指向如图&#xff0c;前后两两进行比较&#xff0c;大数据向后冒泡传递&#xff0c;小数据换到前面。 一次冒泡后&#xff0c;数组中最大…...

【Kubernetes】常见面试题汇总(五十)

目录 112.考虑一个公司要向具有各种环境的客户提供所有必需的分发产品的方案。您如何看待他们如何动态地实现这一关键目标&#xff1f; 113.假设一家公司希望在从裸机到公共云的不同云基础架构上运行各种工作负载。在存在不同接口的情况下&#xff0c;公司将如何实现这一目标&…...

Linux 操作系统中的 main 函数参数和环境变量

在聊进程替换之前&#xff0c;有一些基础知识我们得先弄清楚。掌握了这些内容&#xff0c;不仅能让你更轻松地理解 Shell 是如何工作的&#xff0c;还能为之后的进程替换操作铺好路。进程替换说白了就是 Shell 的基本原理&#xff0c;它能把一个命令的输出直接当成另一个命令的…...

Vue项目中通过插件pxtorem实现大屏响应式

一、原理 rem单位代表的是根节点的font-size大小&#xff0c;所以当我们在页面上使用rem去替代px的时候&#xff0c;就可以通过修改根节点font-size的值&#xff0c;动态地让页面上的元素根据不同浏览器宽高下去实现变化。 二、工具 1.postcss-pxtorem 作用&#xff1a;在编…...

(Django)初步使用

前言 Django 是一个功能强大、架构良好、安全可靠的 Python Web 框架&#xff0c;适用于各种规模的项目开发。它的高效开发、数据库支持、安全性、良好的架构设计以及活跃的社区和丰富的文档&#xff0c;使得它成为众多开发者的首选框架。 目录 安装 应用场景 良好的架构设计…...

【星汇极客】单片机竞赛之2024睿抗机器人大赛-火线速递赛道(持续更新)

前言 本人是一名嵌入式学习者&#xff0c;在大学期间也参加了不少的竞赛并获奖&#xff0c;包括但不限于&#xff1a;江苏省电子设计竞赛省一、睿抗机器人国二、中国高校智能机器人国二、嵌入式设计竞赛国三、光电设计竞赛国三、节能减排竞赛国三。 后面会经常写一下博客&…...

生信科研,教授(优青)团队一站式指导:高通量测序技术--农业植物基因组分析、组蛋白甲基化修饰、DNA亲和纯化测序、赖氨酸甲基化

组蛋白甲基化修饰工具(H3K4me3 ChIP-seq) 组蛋白甲基化类型也有很多种&#xff0c;包括赖氨酸甲基化位点H3K4、H3K9、H3K27、H3K36、H3K79和H4K20等。组蛋白H3第4位赖氨酸的甲基化修饰(H3K4)在进化上高度保守&#xff0c;是被研究最多的组蛋白修饰之一。 DNA亲和纯化测序 DNA亲…...

【Immich部署与访问】自托管媒体文件备份服务 Immich 本地化部署与远程访问存储数据

文章目录 前言1.关于Immich2.安装Docker3.本地部署Immich4.Immich体验5.安装cpolar内网穿透6.创建远程链接公网地址7.使用固定公网地址远程访问 前言 本篇文章介绍如何在本地搭建lmmich图片管理软件&#xff0c;并结合cpolar内网穿透实现公网远程访问到局域网内的lmmich&#…...

AI少女/HS2甜心选择2 仿逆水寒人物卡全合集打包

内含AI少女/甜心选择2 仿逆水寒角色卡全合集打包共6张 内含&#xff1a;白灵雪魅落霞飞雁君临华歌白君临华歌黑平野星罗晚香幽韵 下载地址&#xff1a; https://www.51888w.com/436.html 部分演示图&#xff1a;...

C/C++逆向:数据类型识别

在逆向工程中&#xff0c;数据类型识别是理解程序逻辑的重要步骤&#xff0c;因为它直接影响对程序逻辑和功能的理解&#xff0c;识别出数据类型有助于确定变量的含义和函数的行为。在分析恶意软件或者寻找安全漏洞时&#xff0c;识别数据类型能够帮助发现代码中的潜在问题。例…...

PASCAL VOC 2012数据集 20类物体,这些物体包括人、动物(如猫、狗、鸟等)、交通工具(如车、船、飞机等)以及家具(如椅子、桌子、沙发等)。

VOC2012数据集是PASCAL VOC挑战赛官方使用的数据集之一&#xff0c;主要包含20类物体&#xff0c;这些物体包括人、动物&#xff08;如猫、狗、鸟等&#xff09;、交通工具&#xff08;如车、船、飞机等&#xff09;以及家具&#xff08;如椅子、桌子、沙发等&#xff09;。每个…...

题目:最左边的数字

问题 - 1060 (hdu.edu.cn) 解题思路&#xff1a; 数字很大&#xff0c;使用科学计数法。则&#xff0c;我们需要的是a的整数位&#xff0c;最终求出a即可。 取对数&#xff1a;nlgnmlga&#xff0c;移项&#xff1a;lganlgn-m&#xff0c;接下来我们需要求m。 …...

第 4 章 Spring IoC容器之BeanFactory

Spring 的 IoC 容器是一个提供 IoC 支持的轻量级容器&#xff0c;除了基本的 IoC 支持&#xff0c;它作为轻量级容器还提供了 IoC 之外的支持。 Spring 提供了两种容器类型&#xff1a;BeanFactory 和 ApplicationContext&#xff1a; BeanFactory&#xff0c;基础类型 IoC 容…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

免费PDF转图片工具

免费PDF转图片工具 一款简单易用的PDF转图片工具&#xff0c;可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件&#xff0c;也不需要在线上传文件&#xff0c;保护您的隐私。 工具截图 主要特点 &#x1f680; 快速转换&#xff1a;本地转换&#xff0c;无需等待上…...