如何在 Linux 和 Unix 中配置静态 IP 地址

配置 IP 地址是每个 Linux 和 Unix 管理员都应该学习的必备技能之一。 我们可以在 GUI 模式下轻松配置 IP 地址。 但在命令行模式下完全不同。 本分步教程介绍了如何在 Linux 和 Unix 操作系统中配置静态 IP 地址。 下面提供的步骤在 CentOS 7 服务器、Ubuntu 16.04 服务器、Ubuntu 18.04 LTS 服务器和桌面版以及 FreeBSD 12 上进行了测试。但是,它应该适用于大多数基于 RPM 和基于 DEB 的 Linux 系统和 Unix 版本。

内容

  1. 在 Linux 中配置静态 IP 地址
    1. 在 RHEL / CentOS / 上配置静态 IP 地址 Fedora / 科学 Linux:
    2. 在 Debian / Ubuntu 上配置静态 IP 地址:
  2. 在 Unix 中配置静态 IP 地址
    1. 帮助我们帮助您:

在 Linux 中配置静态 IP 地址

首先,我们将了解如何在基于 RPM 的系统上配置 IP 地址。

在 RHEL / CentOS / 上配置静态 IP 地址 Fedora / 科学 Linux:

在 Fedora、RHEL 及其克隆,如 CentOS、Scientific Linux、网络接口卡(不久 线) 配置将存储在 /etc/sysconfig/网络脚本/ 目录。

笔记: 在这里,我将所有命令运行为 用户。 如果您以普通用户身份登录,只需使用 ‘sudo’ 在每个命令的前面。

首先,让我们找到网卡的名称。 为此,请运行:

# ip link show

样本输出:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff

或者,使用此命令显示详细输出:

# ip addr

样本输出:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00  inet 127.0.0.1/8 scope host lo  valid_lft forever preferred_lft forever  inet6 ::1/128 scope host   valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000  link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff  inet 192.168.225.150/24 brd 192.168.1.255 scope global enp0s3  valid_lft forever preferred_lft forever  inet6 fe80::a00:27ff:fe80:6319/64 scope link   valid_lft forever preferred_lft forever

通常,有线网卡名称会以字母开头 “e”, 无线网卡名称将以字母开头 “w”.

如您在上面的输出中看到的,我的有线网卡名称是 enp0s3. 它可能在您的发行版中有所不同,但通常以字母“e”开头。

现在让我们为这个 NIC 配置一个静态 IP 地址。

在任意编辑器中打开网卡配置文件:

# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

这里, 我们 是文本编辑器。 您可以使用您选择的任何文本/图形编辑器,例如 纳米 或者 编辑.

添加 IP 地址、子网掩码、网关和 DNS 服务器,如下所示。

TYPE="Ethernet" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" NAME="enp0s3" UUID="e9f9caef-cb9e-4a19-aace-767c6ee6f849" ONBOOT="yes" HWADDR="08:00:27:80:63:19" IPADDR0="192.168.225.150" PREFIX0="24" GATEWAY0="192.168.225.1" DNS1="8.8.8.8" IPV6_PEERDNS="yes" IPV6_PEERROUTES="yes"

这就是典型的网卡配置文件在任何基于 RPM 的系统中的样子。 您是否注意到我用粗体标记的线条(以及图像中的箭头)? 这些是重要的线路。

让我解释一下这些行:

  • BOOTPROTO=”无”– 此行显示应该配置网卡的IP地址 手动. 如果您将值设置为 “dhcp”,则网卡将接受来自网络中任何 DHCP 服务器的 IP 地址。
  • IPADDR0=”192.168.225.150″ – 此行表示网卡的 IP 地址。 在这里,您可能已经注意到该行后面的数字 0(零) IPADDR. 这表明这张卡有 只有一个IP地址. 如果您想设置多个 IP 地址(即虚拟 IP 地址),则添加新行 – 例如 IPADDR1、IPADDR2 并设置您选择的不同 IP 地址。
  • PREFIX0=”24″ – 此行表示子网掩码,即 255.255.255.0。 在这里,您可以使用 PREFIX1、PREFIX 2 等行指定多个子网。
  • GATEWAY0=”192.168.225.1″ – 这是 NIC 的网关地址。
  • DNS1=”8.8.8.8″ – 名称服务器地址。

设置所有详细信息后,保存并 close 文件。 重新启动网络服务以使更改生效。

# systemctl restart network

或者,只需重新启动系统。

现在,使用命令验证新的静态 IP 地址:

# ip addr

或者,您可以检查特定网卡的地址,如下所示。

# ip a s enp0s3

样本输出:

2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff inet 192.168.225.150/24 brd 192.168.225.255 scope global noprefixroute enp0s3 valid_lft forever preferred_lft forever inet6 2405:204:714e:faa:a00:27ff:fe80:6319/64 scope global noprefixroute  valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe80:6319/64 scope link noprefixroute  valid_lft forever preferred_lft forever

或者,您可以使用 网络管理器 TUI (nmtui) 实用程序来配置 IP 地址。

如果尚未安装,您可以使用以下命令安装它:

# yum install NetworkManager-tui

现在,通过输入以下命令启动 nmtui 实用程序:

# nmtui

选择 “编辑连接” 选项: