如何在 Ubuntu 20.04 上配置静态 IP 地址

2023-11-19

本文介绍如何在 Ubuntu 20.04 上设置静态 IP 地址。

通常,在大多数网络配置中,IP 地址由路由器 DHCP 服务器动态分配。在不同情况下可能需要设置静态 IP 地址,例如配置端口转发或运行媒体服务器 .

使用 DHCP 配置静态 IP 地址#

为 LAN 上的设备分配静态 IP 地址的最简单且推荐的方法是在路由器上配置静态 DHCP。静态 DHCP 或 DHCP 保留是大多数路由器上的一项功能,每次设备向 DHCP 服务器请求地址时,该功能使 DHCP 服务器自动将相同的 IP 地址分配给特定网络设备。这是通过将静态 IP 分配给设备的唯一 MAC 地址来实现的。

配置 DHCP 保留的步骤因路由器而异。有关更多信息,请参阅供应商的文档。

Netplan #

Ubuntu 17.10及更高版本使用Netplan作为默认的网络管理工具。以前的Ubuntu 版本正在使用ifconfig及其配置文件/etc/network/interfaces配置网络。

Netplan 配置文件是用 YAML 语法编写的.yaml文件扩展名。要使用 Netplan 配置网络接口,您需要创建一个YAML界面的描述,Netplan 将为所选渲染器工具生成所需的配置文件。

Netplan 支持两种渲染器:NetworkManager 和 Systemd-networkd。 NetworkManager 主要用于台式机,而 Systemd-networkd 用于没有 GUI 的服务器。

在 Ubuntu 服务器上配置静态 IP 地址#

在 Ubuntu 20.04 上,系统使用“可预测的网络接口名称”来识别网络接口。

设置静态 IP 地址的第一步是确定要配置的以太网接口的名称。为此,请使用ip link命令,如下图:

ip link

该命令打印所有可用网络接口的列表。在本例中,接口的名称是ens3:

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: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:6c:13:63 brd ff:ff:ff:ff:ff:ff

Netplan配置文件存储在/etc/netplan目录。您可能会在此目录中找到一个或多个 YAML 文件。文件名可能因设置而异。通常,该文件的名称为01-netcfg.yaml, 50-cloud-init.yaml, or NN_interfaceName.yaml,但在您的系统中可能会有所不同。

如果您的 Ubuntu 云实例配置有 cloud-init,您需要禁用它。为此,创建以下文件:

sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
network: {config: disabled}

要在网络接口上分配静态 IP 地址,请使用您的命令打开 YAML 配置文件文本编辑器 :

sudo nano /etc/netplan/01-netcfg.yaml
/etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: yes

在更改配置之前,我们先简单解释一下代码。

每个 Netplan Yaml 文件都以network至少具有两个必需元素的键。第一个必需元素是网络配置格式的版本,第二个元素是设备类型。设备类型可以是ethernets, bonds, bridges, or vlans.

上面的配置还有一行显示renderer类型。开箱即用,如果您在服务器模式下安装了 Ubuntu,渲染器将配置为使用networkd作为后端。

在设备类型下(ethernets),您可以指定一个或多个网络接口。在这个例子中,我们只有一个接口ens3配置为从 DHCP 服务器获取 IP 寻址dhcp4: yes.

分配静态 IP 地址ens3界面,编辑文件如下:

  • 将 DHCP 设置为dhcp4: no.
  • 指定静态 IP 地址。在下面addresses:您可以添加一个或多个将分配给网络接口的 IPv4 或 IPv6 IP 地址。
  • 指定网关。
  • Under nameservers,设置名称服务器的 IP 地址。
/etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      addresses:
        - 192.168.121.221/24
      gateway4: 192.168.121.1
      nameservers:
          addresses: [8.8.8.8, 1.1.1.1]

编辑 Yaml 文件时,请确保遵循 YAML 代码缩进标准。如果语法不正确,则不会应用更改。

完成后,保存文件并通过运行以下命令应用更改:

sudo netplan apply

通过键入以下内容验证更改:

ip addr show dev ens3
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 08:00:27:6c:13:63 brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.221/24 brd 192.168.121.255 scope global dynamic ens3
       valid_lft 3575sec preferred_lft 3575sec
    inet6 fe80::5054:ff:feb0:f500/64 scope link 
       valid_lft forever preferred_lft forever

就是这样!您已为 Ubuntu 服务器分配了静态 IP。

在 Ubuntu 桌面上配置静态 IP 地址#

在 Ubuntu 桌面计算机上设置静态 IP 地址不需要任何技术知识。

在“活动”屏幕中,搜索“设置”并单击该图标。这将打开 GNOME 设置窗口。根据您要修改的接口,单击“网络”或“Wi-Fi”选项卡。要打开接口设置,请单击接口名称旁边的齿轮图标。

在“IPV4”方法”选项卡中,选择“手动”并输入您的静态 IP 地址、网络掩码和网关。完成后,单击“应用”按钮。

要验证更改,请使用以下命令打开终端Ctrl+Alt+T键盘快捷键或单击终端图标并运行:

ip addr

输出将显示接口 IP 地址:

...
2: wlp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 50:5b:c2:d8:59:7d brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.221/24 brd 192.168.31.255 scope global dynamic noprefixroute wlp1s0
       valid_lft 38963sec preferred_lft 38963sec
    inet6 fe80::45e3:7bc:a029:664/64 scope link noprefixroute 

结论#

我们向您展示了如何在 Ubuntu 20.04 上配置静态 IP 地址。

如果您有任何疑问,请在下面留言。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Ubuntu 20.04 上配置静态 IP 地址 的相关文章

随机推荐

  • 用于富 Web 开发的 13 个免费 JavaScript 库和插件

    在这个新的一天伴随着最新技术崛起的舞台上 让您的商业品牌绽放光芒的唯一方法就是紧跟市场流行的趋势 使用 HTML 和 JavaScript 等技术是通过其中使用的一流功能获得盈利业务的灵魂 当从技术角度谈论 JavaScript 时 考虑到
  • 如何在不终止 Linux 上正在运行的进程的情况下关闭终端

    例如 您正在运行耗时的进程 并且您不希望该作业由于终端关闭而被终止 要处理这种情况 您只需从活动作业表中删除作业即可 这样当终端关闭时作业就不会被杀死 指示 按照以下说明从终端分离正在运行的作业 1 Press CTRL Z to susp
  • 如何允许远程访问 Tomcat 管理器

    Apache Tomcat 是一种广泛使用的开源 Java Servlet 容器 允许您托管和管理基于 Java 的 Web 应用程序 Tomcat Manager 是一个基于 Web 的界面 提供用于管理已部署应用程序的管理工具 默认情况
  • DUF – 适用于 Linux、BSD 和 macOS 的跨平台磁盘使用/免费实用程序

    随着数据的指数级增长 管理存储和分析磁盘使用情况已成为系统管理员和日常计算机用户的一项基本任务 了解磁盘空间的利用方式有助于您优化系统并就存储分配做出明智的决策 DUF 即磁盘使用 空闲实用程序 是一款功能强大的跨平台工具 旨在帮助您做到这
  • 如何在 Shell 脚本中检查 Python 版本

    Python 是由 Guido van Rossum 创建的一种高级通用编程语言 它于 1991 年首次发布 通常 基于 Linux 的发行版都预装了 Python 版本 本教程将帮助您在脚本中查找 Python 版本详细信息 此外 您还可
  • 如何在 Debian 11 上安装和配置 Fail2ban

    每台可通过互联网访问的服务器都面临着遭受暴力破解和恶意软件攻击的巨大风险 黑客尝试使用暴力尝试来访问可在公共网络上访问的应用程序 Fail2ban 是一种工具 用于通过提高基于 Linux 的计算机的安全性来保护其免受自动攻击 它监控任何恶
  • 使用 MySQL 中的预准备语句防止 SQL 注入攻击

    SQL 注入攻击是当今 Web 应用程序面临的最常见的安全威胁之一 当恶意行为者使用特制的输入来操纵数据库查询并获得对敏感数据的未经授权的访问时 就会发生这些攻击 为了防止 SQL 注入攻击 开发人员可以在 MySQL 中使用准备好的语句
  • 如何在 Bash 脚本中使用 ${} 提取子字符串

    Bash Bourne Again SHell 是一种流行的 shell 脚本语言 尤其是在 Linux 和 Unix 世界中 shell 脚本中最常见的任务之一是操作字符串 包括从给定字符串中提取子字符串 在本文中 我们将探讨如何使用强大
  • 如何在 Fedora 34/33 上安装 Magento2

    Magento 是最好的企业级电子商务软件和解决方案 它由开放 灵活的下一代架构提供支持 使用 Magento 开发的应用程序将为用户提供最佳且引人入胜的购物体验 其性能优于其他可用的电子商务应用程序 Magento 2 是最新版本 该版本
  • 什么是 SHA-256 算法?

    安全哈希算法 256 位 SHA 256 是 SHA 2 安全哈希算法 2 系列中的加密哈希函数之一 由美国国家安全局 NSA 设计并于2001年首次发布 广泛应用于各种安全应用和系统 在深入了解 SHA 256 的细节之前 我们首先了解什
  • 如何在 Fedora 和 RHEL 系统中安装 Google Chrome

    Google Chrome 是一款功能强大 快速且流行的网络浏览器 以其简约的设计和强大的功能套件而闻名 虽然 Fedora 和 Red Hat Enterprise Linux RHEL 系统配备了默认的 Web 浏览器 大多数情况下为
  • 如何在 Ubuntu 上创建 sudo 用户

    The sudo命令旨在允许用户以另一个用户 默认为 root 用户 的安全权限运行程序 在本指南中 我们将向您展示如何在 Ubuntu 系统上创建具有 sudo 访问权限的新用户 然后 您可以使用此用户帐户执行管理命令 而无需以 root
  • Linux 中的 lsmod 命令(列出内核模块)

    lsmod是一个命令行实用程序 显示有关已加载的 Linux 内核模块的信息 内核模块 内核是操作系统的核心组件 它管理系统的资源 是计算机硬件和软件之间的桥梁 Linux内核采用模块化设计 内核模块 通常称为驱动程序 是扩展内核功能的一段
  • 如何 Grep 查找多个字符串和模式

    grep是一种功能强大的命令行工具 允许您在一个或多个输入文件中搜索与正则表达式匹配的行 并将每个匹配行写入标准输出 在本文中 我们将向您展示如何使用 GNUgrep搜索多个字符串或模式 Grep 多种模式 GNU grep支持三种正则表达
  • 如何在Linux上挂载ISO文件

    ISO 文件是一种存档文件 通常包含 CD 或 DVD 的完整映像 例如 大多数操作系统 例如 Windows Linux 和 macOS 都以 ISO 映像的形式分发 ISO 文件可以使用流行的存档程序提取 安装在循环设备上并写入 USB
  • 如何在 Ubuntu 18.04 上安装 Ruby

    Ruby 是当今最流行的语言之一 它具有优雅的语法 并且是强大的 Ruby on Rails 框架背后的语言 在本教程中 我们将向您展示在 Ubuntu 18 04 系统上安装 Ruby 的三种不同方法 先决条件 在开始学习本教程之前 请确
  • 使用 PuTTYgen 在 Windows 上生成 SSH 密钥

    Secure Shell SSH 是一种加密网络协议 用于客户端和服务器之间的安全连接 支持各种身份验证机制 两种最流行的机制是基于密码的身份验证和基于公钥的身份验证 使用 SSH 密钥比传统的密码身份验证更安全 更方便 本教程介绍如何使用
  • 如何在 CentOS 7 上设置 Apache 虚拟主机

    Apache 虚拟主机允许多个网站在一台 Web 服务器上运行 使用虚拟主机 您可以指定站点文档根 包含网站文件的目录 为每个站点创建单独的安全策略 为每个站点使用不同的 SSL 证书等等 在本教程中 我们将提供有关如何在 CentOS 7
  • Linux 文件命令

    Linuxfile命令显示文件的类型 当您必须找出以前从未见过的文件类型或文件没有文件扩展名时 这会很有帮助 Linux 文件命令语法 Linux 的语法file命令如下 file OPTION FILE 它可以采用一个或多个文件名作为其参
  • 如何在 Ubuntu 20.04 上配置静态 IP 地址

    本文介绍如何在 Ubuntu 20 04 上设置静态 IP 地址 通常 在大多数网络配置中 IP 地址由路由器 DHCP 服务器动态分配 在不同情况下可能需要设置静态 IP 地址 例如配置端口转发或运行媒体服务器 使用 DHCP 配置静态