LINUX 网络管理
目录
一、NetworkManager的特点
二、配置网络
1、使用ip命令临时配置
1)查看网卡在网络层的配置信息
2)查看网卡在数据链路层的配置信息
3)添加或者删除临时的网卡
4)禁用和启动指定网卡
2、修改配置文件
3、nmcli命令行工具
1)查看网卡
2)查看会话
3)配置已存在会话的网卡IP地址
4)添加一个新会话
5)连接、断开、删除会话
4、图形化配置
5、cockpit配置示意图--web页面配置
三、测试网络
1、ping命令
2、tracepath命令
3、traceroute命令
四、通过域名访问主机
五、从网站下载文件
1、wget命令
1、curl命令
一、NetworkManager的特点
1、NM能够管理各种网络
有线网卡、无线网卡
静态IP、动态IP
以太网、非以太网
物理网卡、虚拟网卡
2、工具齐全
支持命令行、文本界面、图像化界面、web界面。
3、广纳天地
管理各种网络、有线、无线、物理、虚拟
4、参数丰富
5、大势所趋
在红帽9版本只能通过NM管理网络。
二、配置网络
网络接口是指网络中计算机或网络设备与其他设备实现通讯的进出口,计算机网络接口即网卡。在红帽版本7之后,有一种新的方式为网络接口命名,该方式是根据固件、设备拓扑、设备类型和位置信息分配固定的名字。网络接口的名称前两个字符为网络类型符号。如en--以太网、wl--无线局域网、ww--无线广域网。
一个网络接口,可以有多个网络连接,但同一时间只能由一个网络连接处于活动状态。
1、使用ip命令临时配置
1)查看网卡在网络层的配置信息
ip [-s] addr show [网卡设备名]
-s :表示增添显示相关的统计信息,接受(RX)和传送(TX)的数据包数量等。
2)查看网卡在数据链路层的配置信息
ip [-s] link show [网卡设备名]
3)添加或者删除临时的网卡
#IPV4
ip -4 addr add|del IP地址/掩码 dev 网卡设备名#IPV6
ip -6 addr add|del IP地址/掩码 dev 网卡设备名
4)禁用和启动指定网卡
ip link set dev 网卡设备名 down|up
2、修改配置文件
需要该系统有 network 服务,不建议使用这种方法去修改配置文件。
在文件在 /etc/NetworkManager/system-connections 目录下

[root@node1 system-connections]# cat ens160.nmconnection
[connection] #会话名
id=ens160
uuid=11cefb13-fe00-3919-a500-8dee5a7696c0
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1694431990[ethernet] #网络类型[ipv4] #添加IPV4区域
address9=192.168.78.140/24
method=manual #IP模式[ipv6] #添加IPV6区域
addr-gen-mode=eui64
method=auto[proxy]
修改之后需要重新启动、加载、连接网卡
[root@node1 ~]# systemctl restart network-online.target
[root@node1 ~]# nmcli connection reload
[root@node1 ~]# nmcli connection up ens160
会话和网卡的关系:一个网卡可以有多个会话,但是只在一个时刻只能连接到一个会话。
3、nmcli命令行工具
这种方法是比较推荐使用的。
1)查看网卡
[root@node1 ~]# nmcli device #简写nmcli d
DEVICE TYPE STATE CONNECTION
ens160 ethernet connected ens160
lo loopback unmanaged --
2)查看会话
[root@node1 ~]# nmcli connection #简写nmcli c
NAME UUID TYPE DEVICE
ens160 11cefb13-fe00-3919-a500-8dee5a7696c0 ethernet ens160
3)配置已存在会话的网卡IP地址
非交互式
nmcli connection modify 网卡名 ipv4.method 地址获取方式 ipv4.addresses IPV4地址 ipv4.gateway 网关地址 ipv4.dns DNS地址 autoconnect yes/no
#例如
[root@node1 ~]# nmcli connection modify ens160 ipv4.method manual
ipv4.addresses 192.168.78.150/24 ipv4.gateway 192.168.78.1
ipv4.dns 8.8.8.8 autoconnect yes
再连接网卡
nmcli connection up 网卡名
交互式方式
[root@node1 ~]#nmcli connection edit ens160
nmcli> goto ipv4
nmcli ipv4> set addresses 192.168.78.160/24
nmcli ipv4> activate
Monitoring connection activation (press any key to continue)
Connection successfully activated (D-Bus active path:
/org/freedesktop/NetworkManager/ActiveConnection/2)
nmcli ipv4> quit
[root@node1 ~]# nmcli c up ens160
4)添加一个新会话
nmcli connection add type 指定网络类型 con-name 连接名字 ifname 网卡名
ipv4.addresses IP地址/掩码 ipv4.gateway 网关地址 ipv4.dns DNS服务器IP地址
ipv4.method ip地址获取方式 autoconnect yes/no
#例如
[root@node1 ~]# nmcli connection add type ethernet con-name test ifname ens170
ipv4.addresses '192.168.78.170/24' ipv4.gateway 192.168.78.100 ipv4.dns '8.8.8.8'
ipv4.method manual autoconnect yes
5)连接、断开、删除会话
nmcli connection up 网名 ---连接会话
nmcli connection down 网卡名 ---断开会话
nmcli connection delete 网卡名 ---删除会话
4、图形化配置
第一步、在命令行输入nmtui,会弹出如下图

第二步、可以利用上下左右回车键进行选择
选择Edit a connection 回车

第三步、然后移动到有右边添加、编辑、删除,如add添加网卡回车

第四步、选择图所示的网络类型,选择ethernet(以太网)回车,进入下图,选择ipv4 右边的show,展开如下图,然后为其添加IP地址/掩码长度、网关、DNS服务器、搜索域。配置好之后移动光标到最下面OK就添加成功。

第五步、在命令行连接一次刚才添加的网卡名
[root@node1 ~]# nmcli connection up 网卡名
5、cockpit配置示意图--web页面配置
第一步、开启cockpit.service服务
[root@node1 ~]# systemctl start cockpit.service
第二步、防火请允许cockpit服务,并重新加载一次防火墙
[root@node1 ~]# firewall-cmd --permanent --add-service=cockpit
Warning: ALREADY_ENABLED: cockpit
success
[root@node1 ~]# firewall-cmd --reload
success
第三步、访问http://IP:9090网页
IP是该主机已经存在的IP地址
访问之后会提示,该网站存在风险,点击高级,继续访问,然后输入主机的root账号和密码进行登录,然后来到如下页面

第四步、选择网路,根据需求进行添加或修改

三、测试网络
1、ping命令
检测网络连通性。
格式
ping [选项] 主机名或者IP地址
例如
[root@node1 ~]# ping -c 4 192.168.78.140
PING 192.168.78.140 (192.168.78.140) 56(84) bytes of data.
64 bytes from 192.168.78.140: icmp_seq=1 ttl=64 time=0.082 ms
64 bytes from 192.168.78.140: icmp_seq=2 ttl=64 time=0.319 ms
64 bytes from 192.168.78.140: icmp_seq=3 ttl=64 time=0.103 ms
64 bytes from 192.168.78.140: icmp_seq=4 ttl=64 time=0.096 ms--- 192.168.78.140 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3108ms
rtt min/avg/max/mdev = 0.082/0.150/0.319/0.097 ms
2、tracepath命令
追踪并显示报文到达目标的主机所经过的路由信息。
格式
traecpath [选项] 主机名或IP地址
例如
[root@node1 ~]# tracepath -b 192.168.78.1401: node1 (192.168.78.140) 0.421ms reachedResume: pmtu 65535 hops 1 back 1
3、traceroute命令
利用ICMP 协议定位您的计算机和目标计算机之间的所有路由器,追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。
格式
tracerout [选项] 主机名或IP地址
例如
[root@node1 ~]# traceroute -I 192.168.78.140
traceroute to 192.168.78.140 (192.168.78.140), 30 hops max, 60 byte packets1 node1 (192.168.78.140) 0.124 ms 0.022 ms 0.006 ms
注:traceroute如果没有安装,使用时会提示你进行安装,安装了就可以使用。
四、通过域名访问主机
配置本地静态解析
在/etc/hosts文件下
#方法1
[root@node1 ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.78.140 www.master.com ----添加此行
[root@node1 ~]# ping www.master.com
PING www.master.com (192.168.78.140) 56(84) bytes of data.
64 bytes from www.master.com (192.168.78.140): icmp_seq=1 ttl=64 time=0.064 ms
64 bytes from www.master.com (192.168.78.140): icmp_seq=2 ttl=64 time=0.087 ms
64 bytes from www.master.com (192.168.78.140): icmp_seq=3 ttl=64 time=0.090 ms
64 bytes from www.master.com (192.168.78.140): icmp_seq=4 ttl=64 time=0.102 ms
^C
--- www.master.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3102ms
rtt min/avg/max/mdev = 0.064/0.085/0.102/0.013 ms#方法2
[root@node1 ~]# echo '192.168.78.140 www.master_2.com' >> /etc/hosts
[root@node1 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.78.140 www.master.com
192.168.78.140 www.master_2.com
五、从网站下载文件
1、wget命令
用于终端命令行下载网络文件,英文全称“web get"
格式
wget [选项] 网址
常用选项:
-P :下载到指定的目录
-t :最大尝试次数
-b :后台下载模式
-c :断点续传
-p :下载页面内容所有资源,包括图片、视频等
-r :递归下载
例如
[root@node1~]wget -P /file www.baidu.com
1、curl命令
是一个网络工具,其主要作用是通过HTTP、HTTPS、FTP等方式下载/上传文件。
格式
curl 网站 [选项] [具体页面]
例如
[root@node11 ~]# curl www.baidu.com -o index.html
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2381 100 2381 0 0 20976 0 --:--:-- --:--:-- --:--:-- 21070
[root@node12 ~]# ll
total 4
-rw-r--r-- 1 root root 2381 Sep 12 20:30 index.html相关文章:
LINUX 网络管理
目录 一、NetworkManager的特点 二、配置网络 1、使用ip命令临时配置 1)查看网卡在网络层的配置信息 2)查看网卡在数据链路层的配置信息 3)添加或者删除临时的网卡 4)禁用和启动指定网卡 2、修改配置文件 3、nmcli命令行…...
refresh rate
1920 x 1080 显卡刷新率 60...
使用 NGINX Unit 实施应用隔离
原文作者:Artem Konev - Senior Technical Writer 原文链接:使用 NGINX Unit 实施应用隔离 转载来源:NGINX 中文官网 NGINX 唯一中文官方社区 ,尽在 nginx.org.cn NGINX Unit 特性集的最新动态之一是支持应用隔离,该特…...
2023/09/12 qtc++
实现一个图形类(Shape) ,包含受保护成员属性:周长、面积, 公共成员函数:特殊成员函数书写 定义一个圆形类(Circle) ,继承自图形类,包含私有属性:半径 公共成员函数:特殊成员函数…...
全科医学科常用评估量表汇总,建议收藏!
根据全科医学科医生的量表使用情况,笔者整理了10个常用的全科医学科量表,可在线评测直接出结果,可转发使用,可生成二维码使用,可创建项目进行数据管理,有需要的小伙伴赶紧收藏! 日常生活能力量表…...
了解消息中间件的基础知识
为什么要使用消息中间件? 解耦:消息中间件可以使不同的应用程序通过解耦的方式进行通信,减少系统间的依赖关系提供异步通信:消息中间件可以实现异步消息传递,提高系统的响应性能。流量削峰:消息中间件可以…...
【linux】Linux wps字体缺失、加粗乱码解决
解决wps字体缺失问题 1、下载字体包 git clone https://github.com/iamdh4/ttf-wps-fonts.git2、创建单独放置字体的目录 mkdir /usr/share/fonts/wps-fonts3、复制字体到系统目录下 cp ttf-wps-fonts/* /usr/share/fonts/wps-fonts4、修改字体权限 chmod 644 /usr/share/f…...
每日两题 103二叉树的锯齿形层序遍历(数组) 513找树左下角的值(队列)
103 题目 103 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 示例 1: 输入:root [3,9,…...
ROS2报错:ImportError: cannot import name ‘Log‘ from ‘rosgraph_msgs.msg‘
在使用ros2的bag命令查看数据集信息时报错 Traceback (most recent call last):File "/opt/ros/noetic/bin/rosbag", line 34, in <module>import rosbagFile "/opt/ros/noetic/lib/python3/dist-packages/rosbag/__init__.py", line 33, in <mo…...
【Vue】Vue中的代码分为哪几种类型?
在 Vue 中的代码可以分为以下几种类型: 1.模板代码 模板代码是 Vue 中用来生成 HTML 的一种语法,可以通过 Vue 的模板语法和指令来动态渲染页面。模板代码一般写在 Vue 组件的 template 标签中。 2.JavaScript 代码 JavaScript 代码是 Vue 组件中用来…...
es6中includes用法
js中的includes用法 1.数组 includes 可以判断一个数组中是否包含某一个元素,并返回true 或者false [a,b,c].includes(a) true [a,b,c].includes(1) false includes可以包含两个参数,第二个参数表示判断的起始位置 起始位置第一个数字是0。 2.字符串 …...
QT中QRadioButton实现分组C++
通过对QRadioButton组件进行分组可解决QRadioButton组件的互斥性 实现如下。 假设已设计好UI并且有UI代码情况: 头文件引用: #include <QButtonGroup> 分组功能 ,cpp文件代码实现: Your_Project::Your_Project(QWidge…...
kafka实战报错解决问题
需求 在一个在线商城中,用户下单后需要进行订单的处理。为了提高订单处理的效率和可靠性,我们使用Kafka来实现订单消息的异步处理。当用户下单后,订单信息会被发送到Kafka的一个Topic中,然后订单处理系统会从该Topic中消费订单消…...
vite+react 使用 react-activation 实现缓存页面
对应的版本 "react": "^18.2.0", "react-activation": "^0.12.4", "react-dom": "^18.2.0", "react-router-dom": "^6.15.0",react-activation 这是一个npm包,在react keep alive…...
【android 蓝牙开发——蓝牙耳机】
【android 蓝牙开发——传统蓝牙】 【android 蓝牙开发——BLE(低功耗)蓝牙 2021-10-09更新】 总结一下蓝牙开发的基本使用以及蓝牙耳机的断开和链接。 所以需权限: <uses-permission android:name"android.permission.ACCESS_FIN…...
Golang goroutine 进程、线程、并发、并行
goroutine 看一个需求 需求:要求统计1-200000000000的数字中,哪些是素数? 分析思路: 1)传统的方法,就是使用一个循环,循环的判断各个数是不是素数(一个任务就分配给一个cpu去做,这样很不划算…...
如何做到安全上网
随着信息化的发展,企业日常办公越来越依赖互联网,而访问互联网过程中,会遇到各种各样不容忽视的风险,例如员工主动故意的数据泄漏,后台应用程序偷偷向外部发信息,木马间谍软件的外联,以及各种挖…...
优维低代码实践:菜单
优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。 优维…...
git merge 如何撤销
如果只是 git merge 未进行其他 git 操作,可以使用 git merge --abort 撤销如果 git merge 之后,再 git add,可以使用 git reset HEAD 或 git reset HEAD file (前者多个文件,后者单个文件)如果 git merge 之后,再 git…...
解读package.json 中的功能
使用 npm init 比较全 一步一步的走,用于完成 package.json 中的各个声明 npm init -y 生成简易的模板下面解读下 package.json 中的功能"version": "1.0.0", //版本号1. 主版本号:非常大的改动 vue2 和 vue3 的改变 2. 功能的升级,…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...
算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...
ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
报错信息:libc.so.6: cannot open shared object file: No such file or directory: #ls, ln, sudo...命令都不能用 error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory重启后报错信息&…...
阿里云Ubuntu 22.04 64位搭建Flask流程(亲测)
cd /home 进入home盘 安装虚拟环境: 1、安装virtualenv pip install virtualenv 2.创建新的虚拟环境: virtualenv myenv 3、激活虚拟环境(激活环境可以在当前环境下安装包) source myenv/bin/activate 此时,终端…...
热门Chrome扩展程序存在明文传输风险,用户隐私安全受威胁
赛门铁克威胁猎手团队最新报告披露,数款拥有数百万活跃用户的Chrome扩展程序正在通过未加密的HTTP连接静默泄露用户敏感数据,严重威胁用户隐私安全。 知名扩展程序存在明文传输风险 尽管宣称提供安全浏览、数据分析或便捷界面等功能,但SEMR…...
边缘计算网关提升水产养殖尾水处理的远程运维效率
一、项目背景 随着水产养殖行业的快速发展,养殖尾水的处理成为了一个亟待解决的环保问题。传统的尾水处理方式不仅效率低下,而且难以实现精准监控和管理。为了提升尾水处理的效果和效率,同时降低人力成本,某大型水产养殖企业决定…...
大模型——基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程
基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程 下载安装Docker Docker官网:https://www.docker.com/ 自定义Docker安装路径 Docker默认安装在C盘,大小大概2.9G,做这行最忌讳的就是安装软件全装C盘,所以我调整了下安装路径。 新建安装目录:E:\MyS…...
