如何在 Ubuntu 中设置静态 IP 地址

摘要:收集连接名称、子网掩码和默认网关后,您可以使用 nmcli 命令在终端中设置静态 IP 地址。或者,在 GNOME 桌面中,打开您的连接设置并单击 + 图标,然后在此处输入您的静态 IP 地址的信息。
您的家庭网络依赖 IP 地址在设备之间路由数据,有时在重新连接到网络时,设备的地址可能会发生变化。以下是如何为 Ubuntu Linux 计算机提供一个永久 IP 地址,该地址在重启后仍然存在。
什么是静态 IP 地址?
网络家庭网络上的所有内容,无论是使用有线连接还是 Wi-Fi,都有一个 IP 地址。 IP 代表互联网协议。 IP 地址是由三个点分隔的四个数字的序列。在该网络中唯一的每个 IP 地址。
IP 地址充当数字标签。您的路由器使用这些标签在正确的设备之间发送数据。通常,您的路由器会分配 IP 地址。它知道哪些 IP 地址正在使用中,哪些是免费的。当一台新设备连接到网络时,它会请求一个 IP 地址,而路由器会分配其中一个未使用的 IP 地址。这称为 DHCP,或动态主机配置协议。
当设备重新启动或断电再打开时,它可能会再次收到其旧 IP 地址,也可能会被分配一个新 IP 地址。这对 DHCP 来说是正常的,不会影响您网络的正常运行。但是,如果您有一台服务器或其他需要能够通过其 IP 地址访问的计算机,那么如果其 IP 地址无法在断电或重启后继续存在,您就会遇到问题。
将特定 IP 地址固定到计算机称为分配静态 IP 地址。顾名思义,静态 IP 地址不是动态的,即使计算机重启也不会改变。
在 Ubuntu 中设置静态 IP
Nmcli
是命令行网络管理器工具,可用于更改您的 IP 地址、配置网络设备,以及——与我们的目的相关——在 Ubuntu 中设置静态 IP。
让我们看一下计算机上已经存在的网络连接。我们使用带有 show
参数的 connection
命令。
nmcli connection show

这将显示有关每个连接的一些信息。我们只配置了一个连接。

输出比终端窗口宽。这是我们看到的信息。
NAME UUID TYPE DEVICE
netplan-enp0s3 1eef7e45-3b9d-3043-bee3-fc5925c90273 ethernet enp0s3
- 姓名:我们的网络连接名为“netplan-enp0s3”。
- UUID:Linux 用于在内部引用此连接的通用唯一标识符。
- 类型:这是以太网连接。
- 设备:此连接使用“enp0s3”网络接口。它是这台计算机中唯一的网卡。
我们可以使用 ip
命令来发现这台计算机正在使用的 IP 地址。
ip addr

在输出中,我们可以看到“enp0s3”条目及其当前 IP 地址 192.168.86.117。 “/24”是表示该网络使用 255.255.255.0 子网掩码的简写方式。记下这个数字,我们稍后需要用到它。
我们需要选择要设置为静态 IP 地址的 IP 地址。显然,您不能使用已经被另一设备使用的 IP 地址。一种安全的方法是使用分配给 Ubuntu 系统的当前 IP 地址。我们可以肯定地知道没有其他人在使用该 IP 地址。
如果我们想使用不同的 IP 地址,请尝试对它执行 ping 操作。我们要测试 IP 地址 192.168.86.128 是否被使用。如果您网络上的所有其他设备都使用 DHCP,并且您对 ping
命令没有任何响应,那么使用它应该是安全的。
ping 192.168.86.128

即使另一台设备之前使用过该 IP 地址,它在下次启动时也会获得一个新的 IP 地址。没有任何东西响应 ping 请求,所以我们可以继续将 192.168.86.128 配置为我们的新静态 IP。
我们还需要知道默认网关的 IP 地址,通常是您的宽带路由器。我们可以使用 ip
命令和 route
选项找到它,我们可以将其缩写为“r”。
ip r

以“default”开头的条目是到默认网关的路由。它的 IP 地址是 192.168.86.1。现在我们可以开始发出命令来设置我们的静态 IP 地址。
第一个命令很长。
sudo nmcli con add con-name "static-ip" ifname enp0s3 type ethernet ip4 192.168.86.128/24 gw4 192.168.86.1

分成小块,它并没有看起来那么糟糕。我们正在使用 sudo
。 nmcli
参数是:
- con:“连接”的缩写。
- 添加:我们将添加一个连接。
- con-name “static-ip”:我们新连接的名称将是“static-ip”。
- ifname enp0s3:连接将使用网络接口“enp0s3”。
- type ethernet:我们正在创建以太网连接。
- ip4 192.168.86.128/24:无类域间路由表示法中的 IP 地址和子网掩码。这是您需要使用之前记下的数字的地方。
- gw4 192.168.86.1:我们希望此连接使用的网关的 IP 地址。
为了使我们的连接成为一个有效的连接,我们需要提供更多的细节。我们的连接现在已经存在,所以我们没有添加任何东西,我们正在修改设置,所以我们使用 mod
参数。我们要更改的设置是 IPv4 DNS 设置。 8.8.8.8 是谷歌主要公共 DNS 服务器的 IP 地址,8.8.4.4 是谷歌的后备 DNS 服务器。
请注意,“ipv4”中有一个“v”。在前面的命令中,语法是没有“v”的“ip4”。在修改设置时需要使用“v”,但在添加连接时不需要。
nmcli con mod "static-ip" ipv4.dns "8.8.8.8,8.8.4.4"

要使我们的 IP 地址静态化,我们需要更改 IP 地址获取其值的方法。默认值为“自动”,这是 DHCP 的设置。我们需要将其设置为“手动”。
nmcli con mod "static-ip" ipv4.method manual

现在我们可以开始或“启动”我们的新连接了。
nmcli con up "static-ip" ifname enp0s3

我们没有收到任何错误消息,这很好。让我们使用 nmcli
再次查看我们的连接。
nmcli con show

这是输出:
NAME UUID TYPE DEVICE
static-ip da681e18-ce9c-4456-967b-63a59c493374 ethernet enp0s3
netplan-enp0s3 1eef7e45-3b9d-3043-bee3-fc5925c90273 ethernet --
我们的静态 IP 连接处于活动状态并使用设备“enp0s3”。现有连接“netplan-enp0s3”不再与物理网络接口相关联,因为我们已经从中提取了“enp0s3”。
使用 GUI 在 Ubuntu 中设置静态 IP
单击系统栏最右端的图标以显示系统菜单,然后单击“有线连接”菜单选项。如果您使用的是无线连接,请点击您的 Wi-Fi 网络的名称。
显示可用的连接。一个点表示哪个正在使用。单击“有线设置”或“Wi-Fi 设置”菜单选项。显示活动连接的详细信息。

要使用“设置”应用程序创建新连接,请单击“网络”页面上有线连接列表上方的“+
”图标。

出现一个对话框。我们需要为新的静态 IP 连接提供一个名称。

我们称我们的新连接为“static-2”。单击“IPv4”选项卡。

选择“手动”单选按钮,并完成“地址”、“网络掩码”和“网关”字段。还要完成 DNS 字段,然后单击绿色的“应用”按钮。请注意 DNS 条目之间的逗号。
我们的新连接列在“有线”连接窗格中。

您可以通过直接单击它们的名称来在可用连接之间切换。
如果要在创建连接后对其进行修改,请单击齿轮图标。在这种情况下,我们将输入“static-ip”连接的设置。

一个对话框打开。单击“IPv4”选项卡。

因为我们将新 IP 地址设置为静态,所以选择了“手动”单选按钮。您可以通过选择“自动 (DHCP)”单选按钮,然后单击绿色的“应用”按钮,将其改回 DHCP。
连接方便
使用 nmcli
命令或 GNOME 桌面和应用程序,您可以非常轻松快速地在网络连接之间跳转。
选择一系列连接配置文件并根据需要在它们之间移动比让您不断编辑一个连接配置文件更方便。如果您正在编辑或添加的连接出现严重错误,您可以随时回退到现有连接之一。