红帽RHCSA认证考试:配置网络设置

题目描述

将 node1 配置为具有以下网络配置:

主机名:node1.domain250.example.com

IP 地址:172.25.250.100

子网掩码:255.255.255.0

网关:172.25.250.254

DNS服务器:172.25.250.254

操作过程

由于当前 node1 这台机器并没有 IP 地址,所以我们不能使用 SSH 登录到这台机器,只能使用考试环境中为我们准备的 node1 的控制台去控制 node1. 但是,控制台不支持来自外部机器的内容粘贴操作,也就是说,如果我们首先给 node1 配置主机名的话,由于无法将外部机器浏览器中显示考题中指定的主机名复制到 node1 的控制台中,只能手动用键盘敲上去,极易出错且费时费力,因此,我们可以选择先为 node1 配置 IP 地址等网络参数,在通过 SSH 连接上 node1 之后,再为 node1 配置题目中要求使用的主机名。

首先,我们要启动 node1 这台机器:

在 “Activities” 中找到 “VM Control”, 如图 01 所示:

红帽RHSCA认证考试:配置网络设置_荒原之梦
图 01.

之后,选中 node1, 点击 “OK” 按钮,如图 02 所示:

红帽RHSCA认证考试:配置网络设置_荒原之梦
图 02.

之后,选中 “Start_node1_VM”, 点击 “OK” 按钮,如图 03 所示:

红帽RHSCA认证考试:配置网络设置_荒原之梦
图 03.

再之后,重复上面的步骤,再次打开 “VM Control” 界面,选中 node1 机器的 “Console_node1_VM”, 点击 “OK” 按钮之后就可以打开 node1 机器自带的控制台,接下来配置网络都需要在该控制台中进行,如图 04 所示:

红帽RHSCA认证考试:配置网络设置_荒原之梦
图 04.

接下来,我们在控制台中以权限最高的 ROOT 用户身份登录,输入考题中给出的 node1 机器的根密码即可成功登录。

我们用网卡配置命令 nmcli 查看一下当前系统中网卡的参数信息,具体的命令如下:

nmcli connection show

根据返回信息可以看到,eth0 这个网卡的名称为 “Wired connection 1”, 在后面的网络配置过程中,我们需要用到这个名称,如图 05 所示:

红帽RHSCA认证考试:配置网络设置_荒原之梦
图 05.

nmcli 命令是从 RedHat 7 和 CentOS 7 开始引入的一个专门用于配置网卡的命令,可以写入网卡配置信息并长期生效,我们接下来对 IP 地址、子网掩码和网关地址等网络参数的配置就使用该参数进行。

具体的网络参数配置命令如下:

nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 172.25.250.100/24 ipv4.gateway 172.25.250.254 ipv4.dns 172.25.250.254 autoconnect yes

注:

① 由于我们要修改网络配置信息,因此要使用 modify 参数;

② 由于网卡名称 Wired connection 1 中包含空格,因此要用双引号包裹起来,写成 "Wired connection 1" 的形式;

③ 由于我们要配置网卡的 IPv4 参数,因此,这里要使用 ipv4.method 参数;

④ 由于我们这是手动配置 IP 地址,因此要使用 manual 参数;

④ 虽然使用 nmcli 命令对网卡做的配置是默认生效的,但是这里我们可以在最后加上 autoconnect yes 参数,以确保配置参数在允许的情况下一定自动生效。

最后,使用如下命令激活刚刚配置的网卡,是配置信息生效:

nmcli connection up "Wired connection 1"

之后,使用 ip addr 命令查看 node1 机器的网卡参数可以发现网络配置已经生效,在外部机器上使用 ping node1 命令可以成功 PING 通 node1 机器,使用 ssh root@node1 命令也可以成功登录 node1 机器。

在使用 ssh@node1 登录到 node1 机器之后,我们开始配置 node1 机器的主机名,为了防止出错,能从题目中复制的部分要直接从题目中复制,比如下面命令中使用到的主机名。具体命令如下:

hostnamectl set-hostname node1.domain250.example.com

注:

hostnamectl 命令可以修改 /etc/hostname 文件中的内容,从而实现对主机名的永久修改,重启不会失效。不过,由于 hostnamectl 命令除了可以设置主机名之外,还可以用来设置主机的图标名称、机架名称、部署环境的名称以及所在位置的名称,因此,如果我们要使用 hostnamectl 命令设置主机名,还需要在其后加上 set-hostname 参数。

之后,我们可以使用 exit 命令退出当前对 node1 机器的 SSH 连接,之后使用重新使用 SSH 连接到 node1 机器后,使用 hostname 命令查看当前机器的主机名可以发现,正确返回了我们刚才配置的主机名:node1.domain250.example.com.