009.网络配置

Rocky Linux的定位是提供服务的网络型操作系统,所以为其配置完整的网络参数至关重要。通常,Linux可以通过两种方式为系统配置网络参数:一种是通过命令行配置,另一种是通过修改系统配置文件来配置。下面分别介绍这两种配置网络参数的方法。

1、ip 命令(临时配置,命令行)
  • 描述:显示或配置网络接口/路由等信息。
  • 语法:ip [选项] [子命令]
    • 子命令:
      • addr 网卡ip地址
      • link 网卡物理地址
      • route 路由信息
a. 网卡接口:增删改查
# 设置ens33网卡接口的IP地址为192.168.137.6
ip addr add 192.168.137.6/24 dev ens33

# 查询ens33网卡接口信息
ip addr show ens33

# 查看网卡的物理链路信息,不写网卡名称表示查看所有网卡的信息。
ip link show ens33

# 删除网卡的IP地址配置
ip addr del 192.168.137.6/24 dev ens33

b. 网卡接口:关闭激活
# 关闭ens33网卡接口
ip link set ens33 down

# 查看ens33接口,state是down状态
ip link show ens33

# 激活ens33网卡接口
ip link set ens33 up

# 查看ens33接口,state是up状态
ip link show ens33

c. 路由信息:增删改查
# 添加默认路由,将默认路由IP地址配置为192.168.137.7
ip route add default via 192.168.137.7

# 查看路由表信息
ip route show

# 添加自定义路由表信息,添加到192.168.137.0/24网络的路由IP地址为192.168.137.7
ip route add 192.168.137.0/24 via 192.168.137.7

# 查看路由表信息
ip route show

# 删除自定义路由表信息
ip route del 192.168.137.0/24 via 192.168.137.7

注意:ip命令的所有配置都是临时的,重启后所有配置都将无效。

2、nmcli 命令(永久配置,命令行)

使用nmcli命令配置网络参数时,需要注意device name和connection name的区别

  • device name是网卡的设备名称,connection name是网络连接名称(也可以称为connection profile名称)。
  • device name和connection name可以一样也可以不一样。

另外,使用nmcli配置网络参数之前,一定要确保NetworkManager服务处于启动状态,否则执行nmcli命令会提示报错信息“Error:NetworkManager is not running.”。

  • 描述:命令行工具,配置网络参数。
  • 用法:nmcli [选项] [子命令]
    • 子命令:
      • device 网络设备
      • connection 网络连接
# 查看网卡物理设备信息
nmcli device show

a. connection:增删改查
# 查看网络连接信息
nmcli connection show

# 删除ens33网络连接
nmcli connection del ens33

# 查看结果
nmcli connection show

下面基于ens33这个网卡设备(ifname对应device name)创建新的网络连接(con-name对应connection name),新创建的网络连接名称可以和设备名称一致,也可以任意配置,type用于指定网络类型为以太网。

# 基于ens33设备创建ens33网络连接
nmcli connection add ifname ens33 con-name ens33 type ethernet

# 查看创建情况
nmcli connection show

创建完网络连接后,我们就可以配置网络连接的IP地址、子网掩码、网关、DNS等信息了,这些网络参数可以通过DHCP自动获取,也可以手动配置。

# 通过 DHCP 自动获取,给ens33配置网络参数
# modify 代表修改网络参数,ens33 是网络连接名称
# ipv4.method 指定网络参数的配置方式,auto代表自动获取
# autoconnect yes 代表开机要自动激活网络连接
nmcli connection modify ens33 ipv4.method auto autoconnect yes


# ipv4.method manual 代表手动配置网络参数,ipv4.addresses代表配置IP地址
# ipv4.gateway 代表配置默认网关,ipv4.dns 代表配置 dns 服务器
# autoconnect yes 代表系统开机后自动激活网络连接
nmcli connection modify es33 \
ipv4.method manual \
ipv4.addresses 192.168.137.5/24 \
ipv4.gateway 192.168.137.2 \
ipv4.dns 114.114.114.114 \
autoconnect yes
b. connection:配置路由

除了配置默认网关,nmcli命令也可以用于配置静态路由信息,多条路由信息使用逗号分隔。下面是配置静态路由信息的具体方法。配置到192.168.137.0/24网络的路由信息是192.168.137.1。

# 配置单个路由
nmcli connection modify ens33 \
ipv4.routes "192.168.137.0/24 192.168.137.5"

# 配置多个路由
nmcli connection modify ens33 \
ipv4.routes "192.168.137.0/24 192.168.137.5, 路由2"

注意:不管是自动获取还是手动配置网络参数,最后都必须激活网络连接才可以让所有参数立刻生效,如果配置了autoconnect yes,则计算机重启后这些网络参数依然有效。

# 关闭网络连接
nmcli connection down ens33

# 激活网络连接
nmcli connection up ens33

提示:系统安装bash-completion软件后,nmcli的子命令可以通过Tab键自动补齐。

3、hostnamectl 命令
  • 描述:显示或配置系统主机名。
  • 语法:hostnamectl [选项]
# 查看主机名及主机信息
hostnamectl status

# 配置主机名
hostnamectl set-hostname lemon
4、网络参数配置文件

在Linux Rocky 9系统中,使用nmcli命令配置的网络参数都会被自动保存到/etc/NetworkManager/system-connections/目录中,所以也可以通过直接修改系统配置文件实现网络参数的配置。

CentOS 7 系统中 配置文件在 /etc/sysconfig/network-scripts/ifcfg-ens33

实例2:配置ens160网卡参数,其中IP地址为172.16.0.160/16,子网掩码为255.255.0.0,网关为172.16.0.25,主DNS为8.8.8.8,辅助DNS为114.114.114.114;配置第二个IP地址为172.16.0.162,子网掩码为255.255.0.0。

主机名配置文件:/etc/hostname,通过修改该文件也可以实现主机名的配置。

5、网络故障排错

随着公司IT技术的不断扩展与延伸,当网络规模越来越大时,故障就时有发生,此时我们需要有良好的排错思路与优秀的排错工具。

排错思路:

    • 首先,从最近一次操作定位问题所在,或根据公司服务器工作手册查找最近一次对服务器所做的修改,定位关键问题;
    • 然后,检查这些操作与配置有无错误,同时获取与问题相关的信息(如硬件型号、软件版本、网络拓扑、日志等);
    • 最后,根据所搜集的信息修复问题,可以是修改配置文件、替换相应的设备或进行版本升级等。

问题不是一成不变的,但解决问题的思路却是万变不离其宗的。下面介绍几个帮助解决网络配置常见问题的排错工具:

a. ping 命令

当网络不通时,可以使用简单的ping命令来定位问题节点,一般我们会按顺序执行ping命令,依次为本地回环、本地IP地址、网关IP地址、外网IP地址,ping命令的对象一般都会给予回应,如果没有回应或者返回错误信息,则表示网络不通(在某些环境下,对端主机也可能不对ping命令进行回应),据此可判断网络断点的位置。

ping 127.0.0.1					# ping 本地回环,测试本地网络协议是否正常
ping 192.168.137.160		# ping 本地IP地址,测试本地网络接口是否正常
ping 192.168.137.2			# ping 网关,测试网关是否正常
ping 202.106.0.20				# ping 外部网络,测试服务商网络是否正常
b. traceroute 命令

一个数据包从本地发出后一般会经过多个路由转发,假设有一个数据包进入互联网后因为中间的某个路由转发有问题,而导致最终的数据发送失败。在这种情况下,我们并不知道问题路由的位置及IP地址,此时可以利用traceroute解决上述问题。traceroute命令可以跟踪数据包的路由过程,以此判断问题所在。Linux下的traceroute默认使用UDP封装跟踪包,如果希望使用ICMP封装,可以使用-I选项。

# 安装软件
dnf -y install traceroute

# 跟踪路由信息
traceroute -I www.baidu.com

c. nslookup 命令

目前互联网高速发展,网络资源爆炸式增长。网络本身是使用IP地址来唯一对应网络资源的,但用户无法记忆那么多IP地址。所以,我们一般会通过域名来访问网络资源,此时DNS服务就显得至关重要了,使用nslookup命令可以帮助检查本地DNS服务器工作是否正常。输入下面的命令检查本地DNS服务器是否可以解析www.baidu.com域名。

nslookup www.baidu.com

输出信息说明,本次解析是由114.114.114.114这台DNS服务器提供的,解析的结果是,www.baidu.com域名对应了多个IP地址,有IPv4的地址也有IPv6的地址。

d. dig 命令

nslookup命令仅可以查询域名与IP地址之间的对应关系,如果要知道更多关于DNS记录的信息,可以使用dig命令,查看MX(邮件记录)、NS(域名服务器记录)等信息。

dig www.baidu.com

# 查看 baidu.com域的邮件记录
dig baidu.com MX

e. ss 命令

如果我们怀疑有人非法闯入了我们的系统,又不知道此人是谁,可以通过ss命令强大的网络监控能力找出连接系统的所有人。当我们启动了一个网络服务但远程客户却无法访问该服务时,也可以使用ss命令查看服务对应的端口是否已经正常开启,以判断服务启动是否正常。

ss -an

# 查看当前系统监听的端口信息(TCP 和 UDP)
ss -nutlp

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值