27
12月
2019
10:12

Ubuntu 和 Linux Mint 中的静态 IP 地址,设置

27 12月 2019 10:12

当计算机网络使用 DHCP 协议时,计算机从 DHCP 服务器接收 IP 地址。 IP 地址可能会改变。 通常要求计算机的IP地址是固定的。

例如,需要组织从 Internet 到本地(家庭或工作)计算机网络上的计算机的端口转发。 最明显的方法是在路由器上配置 MAC 地址绑定,并在 DHCP 服务器上保留 IP 地址。 但这并不总是很方便,例如在工作中:要绑定IP地址,您需要访问路由器的控制面板或要求本地系统管理员进行IP-MAC绑定。

我想告诉你我在 Linux Mint 或 Ubuntu 中设置静态 IP 地址和指定任何 DNS 服务器的方法。

在 Linux 中管理网络的方法

5种方式:
1) /etc/网络/接口网络服务- 经典方法,使用文本配置文件设置网络。
2) 网络管理服务小程序 nm-小程序- 图形方法,通过单击带有以太网或 Wi-Fi 网络符号的图标从系统托盘的桌面调用。
3) 纳米克利- 与方法 2 相同,但从命令行管理网络管理器服务。 不会被考虑。
4) netplan 替代 /etc/network/interfaces- 一种使用 YAML(另一种标记语言)格式的文本配置文件的新方法。
5) 网络服务 (SystemD 的一部分)- 参见 cat /etc/systemd/networkd.conf в данной статье не будет рассмотрен. По умолчанию демон networkd отключен. Команды для просмотра статуса службы: networkctl, networkctl status, networkctl status --all

使用网络管理器小程序的图形方法

配置静态 IP 地址或动态 IP 地址的最简单方法是以图形方式使用网络管理器小程序(可以从系统托盘或使用命令调用它) nm-applet )。 此方法在以下情况下有效:

  • 在文件中 /etc/NetworkManager/NetworkManager.conf указано managed=true 并且不使用netplan,
  • 或在文件中 /etc/netplan/000-installer-config.yaml указано renderer: NetworkManager 并使用netplan。

检查IP地址管理方式-NM或netplan

如果 NetPlan 服务正在运行,那么本文不适合。 检查 NetworkManager 是否正在使用:

service NetworkManager status

在系统上“默认”应该显示:
活动:活动(运行)

设置静态 IP 地址

1.找出您的 Linux 操作系统中的网卡名称、是否使用 NetPlan 以及 IP 地址。

找出答案 网卡名称,运行以下命令之一:

ip link
networkctl
nmcli device show | grep GENERAL.DEVICE

如果PC有以太网卡,命令输出将显示其名称。 例如: enp2s0 или enp1s3
进一步的步骤需要网卡的名称。

找出答案 使用NetPlan吗?:

sudo systemctl start systemd-networkd
sudo netplan status --all

! 如果 “在线状态:离线” 和网卡的状态 “不受管理”,那么 netplan 不用于网络管理,您可以继续阅读本文及其包含的说明。 否则请看文章 netplan 替代 /etc/network/interfaces

找出答案 IP地址:

ip addr

IP-需要该地址来确定在哪个子网中颁发 IP 地址。 例如,192.168.0.100/24表示网络在192.168.0.x空间内发布地址,其中x从1到254。/24后缀对应网络掩码255.255.255.0。

2.如果我们想使用配置文件来管理IP地址,请禁用系统内置的小程序 《网络管理员》。 这会干扰文本配置文件的网络配置管理:

如果不使用Netplan,则继续。

! 在修改配置文件之前,请使用以下命令对其进行备份 cp

sudo nano /etc/NetworkManager/NetworkManager.conf

我们留下前两行:
<前>[主要]
插件=ifupdown,keyfile

在行首放置带有井号的注释 dns=dnsmasq 如果存在这样的字符串。

!!重要的! 在 [ifupdown] 部分中,您需要将参数“driven = true”更改为“driven = false”:

<上一页>[ifupdown]
托管=假#禁用 NetworkManager 小程序

保存并退出:Ctrl+S、Ctrl+X。

3.现在我们修复配置文件 /etc/network/interfaces:

sudo nano /etc/network/interfaces
自动定位
iface lo inet环回

自动enp2s0
允许热插拔 enp2s0
iface enp2s0 inet 静态
地址192.168.0.71
网络掩码 255.255.255.0
网关192.168.0.1
dns 名称服务器 77.88.8.3
dns-搜索本地

将 enp2s0 替换为您在步骤 #1 中找到的网卡的真实名称。 例如,enp4s0。

!!!! !!排队 dns-nameservers 您可以指定非标准 DNS 服务器。 例如,从 Yandex 77.88.8.3 获取安全 DNS。 详细说明-Yandex.DNS

保存并退出:Ctrl+S、Ctrl+X。

4.清除以前的IP地址并重新启动网络服务:

sudo ip addr flush dev enp2s0

将 enp2s0 替换为您在步骤 #1 中找到的网卡的真实名称。 例如,enp4s0。

5.重新启动网络服务

sudo service NetworkManager restart
sudo service networking restart
sudo service resolvconf restart

!!!计算机的静态IP地址设置完成。


如果我们需要返回动态 IP 地址(默认情况下),请阅读下一段。

设置动态 IP 地址

要启用从 DHCP 服务器接收地址,请更正同一文件 “接口”:

# This file describes the network interfaces available on your system
#以及如何激活它们。 有关详细信息,请参阅接口(5)。

#环回网络接口
自动定位
iface lo inet环回

#主要网络接口`
自动enp2s0
允许热插拔 enp2s0
iface enp2s0 inet dhcp

保存并退出:Ctrl+S、Ctrl+X。

清除以前的IP地址并重新启动网络服务:_

sudo ip addr flush dev enp2s0

重新启动服务以应用设置:

sudo service NetworkManager restart
sudo service networking restart
sudo service resolvconf restart

!!!计算机的动态IP地址设置完成。

新增:重置网管配置

如果您需要将 NetworkManager 小程序返回到系统托盘(状态行)并将控制权转移给它,
您需要执行以下操作:

1)返回文件 /etc/network/interfaces 改为原来的形式:

sudo nano `/etc/network/interfaces` 
source /etc/network/interfaces.d/*

保存并退出:Ctrl+S、Ctrl+X。

2)编辑文件 /etc/NetworkManager/NetworkManager.conf,在部分中表示 “如果向上向下” 参数 “托管=真”:

sudo nano /etc/NetworkManager/NetworkManager.conf
[main]
插件=ifupdown,密钥文件

[如果上下]
托管=true

Ctrl+S、Ctrl+X

3)清除IP地址并重启网络服务:

sudo ip addr flush dev enp2s0
sudo service NetworkManager restart
sudo 服务网络重启
sudo service resolvconf restart

在这种情况下,可以通过图形方式更改IP地址:单击系统面板上的网络图标,然后选择“网络设置”和“齿轮”按钮。

!!!我们已将网络管理返回到 NetworkManager 小程序。


最后更改:05/07/2026



相关出版物