如何在Ubuntu中设置静态IP——Linux IP地址配置教程
在大多数网络配置中,路由器 DHCP 服务器默认动态分配 IP 地址。如果你想确保系统 IP 每次都保持不变,可以强制它使用静态 IP。
这就是我们将在本文中学习的内容。我们将探讨在 Ubuntu 中设置静态 IP 的两种方法。
静态 IP 地址适用于以下情况:
- 配置端口转发
- 将系统配置为服务器,如 FTP 服务器、Web 服务器或媒体服务器
前提条件:
要学习本教程,你需要具备以下条件:
- 安装 Ubuntu,最好有图形用户界面
sudo
权限,因为我们将修改系统配置文件
如何使用命令行设置静态 IP
在本节中,我们将详细介绍配置静态 IP 所需的所有步骤。
第 1 步:启动终端
可以使用快捷键Ctrl+ Shift+t
启动终端。
第 2 步:记录当前网络的信息
我们需要当前网络的详细信息,如当前分配的 IP、子网掩码和网络适配器名称,以便在配置中进行必要的更改。
使用下面的命令查找可用适配器的详细信息和各自的 IP 信息。
ip a
输出如下:
对我的网络来说,当前的适配器是eth0
。你的系统可能与此不同
- 注意当前网络适配器名称
由于我的当前适配器是eth0
,因此下面的详细信息与之相关。
6: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:15:5d:df:c3:ad brd ff:ff:ff:ff:ff:ff
inet 172.23.199.129/20 brd 172.23.207.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::215:5dff:fedf:c3ad/64 scope link
valid_lft forever preferred_lft forever
值得注意的是,当前的 IP172.23.199.129
是动态分配的。它为网络掩码预留了20
位。广播地址为 172.23.207.255
。
- 注意子网
我们可以使用下面的命令查找子网掩码的详细信息:
ifconfig -a
根据你的适配器选择输出,并仔细阅读。
IP 是 172.23.199.129
,子网掩码是 255.255.240.0
根据类和子网掩码,我的网络可用主机 IP 范围是:172.23.192.1 - 172.23.207.254
。
子网划分是一个庞大的话题。有关子网划分和可用 IP 范围的更多信息,请查看本文。
第 3 步:更改配置
Netplan是最新版 Ubuntu 的默认网络管理工具。Netplan 的配置文件使用 YAML 编写,扩展名为.yaml
。
注意:要小心配置文件中的空格,因为它们是语法的一部分。如果缩进不对,文件将无法正常读取。
- 转到位于
/etc/netplan
的netplan
目录。
ls
进入/etc/netplan
目录。
如果你没有看到任何文件,可以创建一个。文件名可以是任何名字,但按照惯例,应该以01-
这样的数字开头,以.yaml
结尾。如果有多个配置文件,数字会设定优先级。
我将创建一个名为01-network-manager-all.yaml
的文件。
让我们把这些行添加到文件中。我们将逐步创建文件。
network:
version: 2
01-network-manager-all.yaml
Netplan 配置文件的顶层节点是一个network:
映射,其中包含 version:2
(表示使用网络定义版本 2)。
接下来,我们将添加一个渲染器来控制整个网络。默认情况下,渲染器为systemd-networkd
,但我们将其设置为NetworkManager
。
现在,我们的文件看起来是这样的:
network:
version: 2
renderer: NetworkManager
接下来,我们将添加ethernets
,并参考之前在步骤#2 中查找的网络适配器名称。其他支持的设备类型包括 modems:
、wifis:
或 bridges:
。
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
01-network-manager-all.yaml
由于我们设置的是静态 IP,不想为该网络适配器动态分配 IP,因此将dhcp4
设置为 no
。
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
dhcp4: no
01-network-manager-all.yaml
现在,我们将根据子网和可用 IP 范围指定第 2 步中提到的特定静态 IP。它是172.23.207.254
。
接下来,我们要指定网关,即分配 IP 地址的路由器或网络设备。我的网关是192.168.1.1
。
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
dhcp4: no
addresses: [172.23.207.254/20]
gateway4: 192.168.1.1
01-network-manager-all.yaml
接下来,我们将定义 nameservers
。这是定义 DNS 服务器或第二个 DNS 服务器的地方。这里的第一个值是 8.8.8.8
,它是 Google 的主 DNS 服务器,第二个值是8.8.8.4
,它是 Google 的辅助 DNS 服务器。这些值可根据你的要求而有所不同。
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
dhcp4: no
addresses: [172.23.207.254/20]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.8.4]
01-network-manager-all.yaml
第 4 步:应用并测试更改
在永久应用更改之前,我们可以先使用该命令测试更改:
sudo netplan try
如果没有错误,它会询问你是否要应用这些设置。
最后,使用 ip a
命令测试更改,你会发现静态 IP 已被应用。
应用静态 IP
如何使用图形用户界面设置静态 IP
通过 Ubuntu 图形用户界面/桌面设置静态 IP 非常简单。步骤如下:
- 搜索
settings
- 点击 “Network” 或 “Wi-Fi” 选项卡,具体取决于你要修改的界面
- 要打开接口设置,点击接口名称旁边的齿轮图标
- 在 IPV4 标签中选择 “Manual“,然后输入静态 IP 地址、掩码和网关
- 单击
Apply
按钮
使用 Ubuntu 桌面手动设置静态 IP
- 使用命令
ip a
来验证
通过图形用户界面更新静态 IP
总结
本文介绍了在 Ubuntu 中设置静态 IP 的两种方法。希望这篇文章对你有所帮助。