导读 目前大多数系统中的 IP 地址都是自动分配的,但是在某些情况下,我们可能需要手动更改。我们今天分享几个修改系统 IP 地址的方法。

作为一个系统管理员,给机器修改 IP 地址是很常见的一个任务。目前大多数系统中的 IP 地址都是自动分配的,但是在某些情况下,我们可能需要手动更改。

我们今天分享几个修改系统 IP 地址的方法。

在动手之前,我们可以先使用如下​​查看当前的 IP 地址​​:

ip a

上述在显示 IP 地址的同时也会显示网口(interface)名称,网口名称在修改 IP 地址的时候会用到。

使用 ip 命令来设置 IP 地址

我们在先前的文章中介绍过 ip 命令,其可以​​查看本机的 IP 地址​​​。这个命令在大多数 Linux 发行版中都是可用的。使用 ip 命令来设置 IP 地址,可以使用如下命令:

ip addr add [ip_address] dev [interface]

比如,向网口 eth1 添加一个 IP 地址,可使用如下命令:

sudo ip addr add 192.168.56.21/24 dev eth1

现在,网口 eth1 中有了两个 IP 地址,一个是原先配置的,另一个是使用命令新加的:

如上图所示,将旧的 IP 地址删掉,就会只剩下一个 IP 地址了。

设置静态 IP 地址

通过上述方法设置的 IP 地址,在系统重启后会被修改掉,IP 地址是动态的。

如果你使用的是旧版本的 Ubuntu(版本号小于17.10),可以通过编辑文件 /etc/network/interfaces 来将 IP 改为静态永久的。

sudo nano /etc/network/interfaces

如果文件内容是如下所示,则说明系统的 IP 地址是由 DHCP 客户端设置的:

auto eth0iface eth0 inet dhcp

我们可以通过修改上述文件来设置静态 IP 地址。例如要把 IP 地址设置为 192.168.56.20,可将上面文件内容修改为:

auto enp0s3iface enp0s3 inet staticaddress 192.168.56.20netmask 255.255.255.0gateway 192.168.40.31

上述内容对于经常使用 Linux 系统的用户来说是很容易理解的。要使修改生效,需要运行如下命令:

$ sudo systemctl restart networking.service

提示:在基于RedHat 的系统上,用于配置网络接口的文件是 /etc/sysconfig/networking-scripts/ifcfg-*

使用 Netplan 进行网络配置(针对Ubuntu)

Ubuntu 有一个用于网络配置的工具,名为 Netplan。

我们在 Ubuntu 20.04 配置 IP 地址作为示例,使用 NetworkManager 作为网络配置的渲染器。

可以在 Netplan 配置文件中查看当前的 IP 地址,该文件为 YAML 格式,如果不存在,可以创建:

sudo nano /etc/netplan/config.yaml

如果IP地址是动态的,你会看到 dhcp4 参数设置为 true。

如果目前已经配置了一个静态 IP,将会看到如下所示的内容:

---network: version: 2 renderer: networkd ethernets: eth1: addresses: - 192.168.56.66/24 nameservers: addresses: - 8.8.8.8 routes: - to: default via: 10.0.2.2

通过修改上面的 IP 地址来设置一个新地址。此外,还可以保留旧的IP地址,在上面网口(eth1)中再添加一个。

配置好后,在应用之前先测试一下:

sudo netplan try

确认更改后,使配置生效:

sudo netplan apply

然后检查一下配置是否已生效:

使用 Netplan 的优点之一是配置的修改是永久的,机器重启后,配置仍会生效,即配置的 IP 是静态的

使用图形界面更改系统IP地址(适用于桌面用户)

使用图形界面管理IP地址是最简单的方法,在 Ubuntu 系统上,网络设置包含所有必需的配置。

在 GNOME 仪表盘中打开 Settings,找到 Network 选项,然后在系统的可用网络中选择设置的图标,如下图所示:

在新打开的窗口中,选择 IPv4 选项卡,然后在 IPv4 method 下,选择 Manual(手动)选项,输入新的 IP 地址:

然后重启网络连接,并检查 IP 地址:

从上面的截图中可以看到,IP 地址已经更改。

ip 命令适用于所有 Linux 系统;Netplan 是一种管理网络的新方式,对于 Ubuntu 系统来说是一种非常简单的方法。

以上就是本次分享所有内容,欢迎讨论。

原文来自:

本文地址://gulass.cn/linux-ip-command.html编辑:roc_guo,审核员:逄增宝

Linux命令大全:

Linux系统大全:

红帽认证RHCE考试心得: