CentOS网络配置进阶:深入研究network服务和NetworkManager

前言

如果你正在使用CentOS系统,并且想要深入了解网络管理和配置,那么本文肯定适合你!在这篇文章中,作者深入探讨了CentOS中的两种网络管理方式:network服务和NetworkManager。通过详实的讲解和实用的示例,你将会学习到如何使用这两种工具来管理网络接口、配置IP地址、网关和DNS等网络参数。无论你是服务器管理员、运维工程师还是普通用户,本文都可以为你提供实用的知识和技巧,助你轻松应对各种网络配置需求。现在就点击阅读,开启你的网络管理之旅吧

network与NetworkManager的关系

先说结论,在CentOS系统中,network服务和NetworkManager是两个常用的网络管理工具,它们之间有一定的关系,但是也有区别:

  • network服务:network服务是在CentOS 6及更早版本中使用的传统网络管理方式。它使用/etc/sysconfig/network-scripts/目录下的配置文件来管理网络接口和网络设置。通过编辑这些配置文件,您可以手动配置网络接口、IP地址、网关、DNS等网络参数。network服务提供了较为底层的网络管理功能,适用于服务器环境或不需要频繁变动网络配置的情况。
  • NetworkManager:NetworkManager是在CentOS 7及更新的版本中引入的新一代网络管理工具。它提供了更高级的网络管理功能,并且支持动态配置和自动检测网络接口。NetworkManager可以通过图形界面或命令行进行配置,并且支持各种网络连接类型,包括有线连接、Wi-Fi连接、移动蜂窝数据连接等。NetworkManager通过/etc/NetworkManager/目录下的配置文件来管理网络设置。

虽然network服务和NetworkManager都可以用于配置网络,但它们之间存在一些差异。在CentOS系统中,默认情况下,NetworkManager会管理网络接口,而network服务会被禁用。如果您需要使用传统的network服务进行网络配置,可以通过停止和禁用NetworkManager服务,并启用network服务来实现。

总的来说,network服务和NetworkManager都是CentOS系统中常用的网络管理工具,根据您的需求和使用场景选择适合的工具即可。

下面着重分享一下network和NetworkManger的一些使用方法

network

Network服务:Network服务是一个传统的网络配置工具,旨在提供基本的网络配置功能。它使用简单的文本文件(例如/etc/network/interfaces)来配置网络接口、IP地址、子网掩码、网关等。通过编辑这些文件,用户可以手动配置网络设置。然后,可以使用命令行工具(如ifconfig、route)来启用、禁用和管理网络接口。

如何使用network服务呢?

在CentOS系统,如何使用Network服务呢?假如你和我一样,本地的网络接口的名字也是ens33。可以按下面的步骤,在CentOS系统中使用Network服务来配置网络接口、IP地址、子网掩码、网关等信息:

  • 打开终端或命令行界面。使用root权限或sudo命令切换到管理员身份。
  • 编辑网络配置文件。网络配置文件通常位于/etc/sysconfig/network-scripts/目录下。可以使用文本编辑器(如vi、nano)打开该文件。
bash 复制代码
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33

根据需要,添加或修改网络接口的配置。例如,如果要配置以太网接口ens33,可以在文件中添加以下内容:

ini 复制代码
DEVICE=ens33 
BOOTPROTO=static 
ONBOOT=yes 
IPADDR=192.168.1.100 
NETMASK=255.255.255.0 
GATEWAY=192.168.1.1 
DNS1=8.8.8.8 
DNS2=8.8.4.4

在上述示例中,IPADDR是IP地址,NETMASK是子网掩码,GATEWAY是网关地址。根据实际情况进行相应的修改。

  • 保存并关闭文件。启用或禁用网络接口。
bash 复制代码
#查询当前网络接口的状态 
ip addr show ens33 
#用于激活处于禁用状态的网络接口 
sudo ifup ens33 
#禁用处于激活状态的网络接口ens33的命令 
sudo ifdown ens33
  • 检查网络连接。使用命令行工具(如ifconfig、ping)检查网络连接是否正常。
less 复制代码
ip addr 
ping [www.baidu.com](http://www.baidu.com)

NetworkManager

NetworkManager:NetworkManager是一个高级的网络管理器,提供更便捷的方法来管理网络连接。它具有图形化界面和命令行界面,并提供了自动检测和配置网络连接的功能。NetworkManager可以通过多种方式管理网络连接,包括以太网、Wi-Fi、蓝牙、移动数据等。它还支持VPN、PPPoE、代理等高级网络功能。

如何使用NetworkManager的命令行界面呢

在绝大多数场景中,CentOS作为服务器操作系统,是通过ssh工具以及命令行来操作服务器,所以这里着重分享的是如何使用NetworkManager的命令行来管理网络。具体来说,nmcli是NetworkManager的官方命令行工具,用于配置、管理和监控网络连接。

下面是使用nmcli命令行工具的一些常见操作:

显示当前的网络连接列表:

sql 复制代码
nmcli connection show

查看某个特定网络连接的详细信息:

sql 复制代码
nmcli connection show {connection_name}

其中,{connection_name}是要查看的网络连接的名称。

添加一个新的网络连接:

bash 复制代码
nmcli connection add type {connection_type} con-name {connection_name} ifname {interface_name}

其中,{connection_type}是要添加的网络连接类型,如ethernet、wifi、ppp等;{connection_name}是新连接的名称;{interface_name}是要分配给连接的网络接口的名称。

启用或禁用某个网络连接:

nmcli connection up {connection_name} 
nmcli connection down {connection_name}

其中,{connection_name}是要启用或禁用的网络连接的名称。

修改某个网络连接的设置:

nmcli connection modify {connection_name} {setting_name} {value}

其中,{connection_name}是要修改的网络连接的名称;{setting_name}是要更改的连接设置的名称;{value}是新值。

删除某个网络连接:

arduino 复制代码
nmcli connection delete {connection_name}

其中,{connection_name}是要删除的网络连接的名称。

上面分享了如何使用NetworkManager来管理网络连接的一些常规操作,那么可以使用NetworkManager来配置静态IP或动态IP吗?

答案是:当然可以。

那么具体使用NetworkManager如何来配置IP地址、子网掩码、网关和DNS等网络参数呢?下面是使用nmcli命令行工具来配置IP地址的示例:

查看当前网络连接列表,找到要配置的连接名称:

sql 复制代码
nmcli connection show

配置静态IP地址、子网掩码和网关:

nmcli connection modify {connection_name} ipv4.method manual ipv4.addresses {ip_address}/{subnet_mask} ipv4.gateway {gateway_ip}

其中,{connection_name}是要配置的网络连接的名称;{ip_address}是要设置的IP地址;{subnet_mask}是子网掩码;{gateway_ip}是网关IP地址。

配置DNS服务器:

nmcli connection modify {connection_name} ipv4.dns {dns_server1} {dns_server2}

可以指定一个或多个DNS服务器的IP地址,用空格分隔。

重新启用网络连接使更改生效:

nmcli connection up {connection_name}

以上示例演示了如何使用nmcli命令行工具配置静态IP地址、子网掩码、网关和DNS。请确保将{connection_name}替换为您要配置的实际网络连接的名称,并将{ip_address}、{subnet_mask}、{gateway_ip}和{dns_server}替换为适当的值。

如果您需要动态获取IP地址(使用DHCP),可以使用以下命令:

arduino 复制代码
nmcli connection modify {connection_name} ipv4.method auto

这将使NetworkManager自动获取IP地址和其他网络参数。

请注意,在修改网络连接设置后,您需要使用nmcli connection down {connection_name}和nmcli connection up {connection_name}命令来禁用和启用连接,以使更改生效。

总结

总的来说,Network服务更适合那些熟悉命令行和手动配置的用户,而NetworkManager则更适合普通用户或需要自动管理网络连接的情况。在大多数Linux发行版中,NetworkManager已成为默认的网络管理工具。

如果你觉得本文对你在CentOS系统中的网络管理和配置有所帮助,别忘了给它点个赞!这样可以让更多的读者朋友发现这篇有价值的技术指南。同时,点击收藏按钮将这篇文章保存起来,方便日后查阅和分享给其他小伙伴。你也可以把它推荐给你的朋友、同事和社区,让更多人受益于这些实用的网络管理技巧。感谢你的支持和喜爱!一起共享知识,让我们的技术之路更加精彩!

相关推荐
geek_Chen01几秒前
虚拟机共享文件夹开启后mnt/hgfs/下无sharefiles? --已解决
linux·运维·服务器
(⊙o⊙)~哦32 分钟前
linux 解压缩
linux·运维·服务器
拾光师1 小时前
spring获取当前request
java·后端·spring
牧小七2 小时前
Linux命令---查看端口是否被占用
linux
鸡鸭扣3 小时前
虚拟机:3、(待更)WSL2安装Ubuntu系统+实现GPU直通
linux·运维·ubuntu
Java小白笔记3 小时前
关于使用Mybatis-Plus 自动填充功能失效问题
spring boot·后端·mybatis
友友马3 小时前
『 Linux 』HTTP(一)
linux·运维·服务器·网络·c++·tcp/ip·http
记得开心一点嘛4 小时前
在Linux系统上使用Docker部署javaweb项目
linux·运维·docker
Tak1Na4 小时前
2024.9.18
linux·运维·服务器
Yana.nice4 小时前
linux中将文本转为unix格式
linux