如何在Ubuntu 18.04上配置静态IP地址
在本教程中,我们将说明如何在Ubuntu 18.04上设置静态IP地址。
通常,IP地址是由路由器DHCP服务器动态分配的。
在不同情况下,例如配置端口转发或者在网络上运行媒体服务器,可能需要在Ubuntu计算机上设置静态IP地址。
使用DHCP配置静态IP地址
向LAN上的设备分配静态IP地址的最简单和建议的方法是在路由器上设置静态DHCP。
静态DHCP或者DHCP保留功能是大多数路由器上都可以使用的功能,每当设备向DHCP服务器请求地址时,它就使DHCP服务器自动将相同的IP地址分配给特定的网络设备。
通过将静态IP分配给设备的唯一MAC地址来起作用。
每个路由器上配置DHCP保留的步骤各不相同,建议查阅供应商的文档。
网络计划
从17.10版本开始,Netplan是Ubuntu上的默认网络管理工具,它取代了以前用于在Ubuntu上配置网络的配置文件“/etc/network/interfaces”。
Netplan使用YAML语法的配置文件。
要使用Netplan配置网络接口,我们需要为该接口创建YAML描述,然后Netplan将为我们选择的渲染器工具生成所需的配置文件。
Netplan当前支持两个渲染器NetworkManager和Systemd-networked。
NetworkManager通常在台式机上使用,而Systemd网络在没有GUI的服务器上使用。
在Ubuntu服务器上配置静态IP地址
较新版本的Ubuntu使用的是“可预测的网络接口名称”,默认情况下,该名称以“ en [letter] [number]”开头。
第一步是确定要配置的以太网接口的名称。
为此,请使用“ 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 3: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 56:00:00:60:20:0a brd ff:ff:ff:ff:ff:ff
Netplan配置文件存储在“/etc/netplan”目录中,并具有扩展名“ .yaml”。
我们可能会在此目录中找到一个或者两个YAML文件。
该文件可能会因安装程序而异。
通常,该文件名为'01 -netcfg.yaml','50 -cloud-init.yaml'或者'NN_interfaceName.yaml',但是在系统中,它可能有所不同。
使用文本编辑器打开YAML配置文件:
sudo nano /etc/netplan/01-netcfg.yaml
/etc/netplan/01-netcfg.yaml
network: version: 2 renderer: networkd ethernets: ens3: dhcp4: yes
在更改配置之前,让我们简要说明一下代码。
每个Netplan Yaml文件都以“网络”密钥开头,该密钥至少包含两个必需的元素。
第一个必需元素是网络配置格式的版本,第二个是设备类型。
设备类型可以是'ethernets','bonds','bridges'或者'vlans'。
上面的配置还包括“渲染器”类型。
开箱即用,如果我们在服务器模式下安装Ubuntu,则渲染器配置为使用“网络”作为后端。
在设备的类型(在本例中为“ ethernets”)下,我们可以指定一个或者多个网络接口。
在此示例中,我们只有一个接口“ ens3”,该接口被配置为从DHCP服务器“ dhcp4:yes”获取IP寻址。
要将静态IP地址分配给“ ens3”接口,请按如下所示编辑文件:
- 将DHCP设置为'dhcp4:no'。
- 指定静态IP地址'192.168.121.199/24'。在“地址:”下,我们可以添加一个或者多个将分配给网络接口的IPv4或者IPv6 IP地址。
- 指定网关“ gateway4:192.168.121.1”
- 在“名称服务器”下,设置名称服务器“地址:[8.8.8.8,1.1.1.1]”的IP地址
/etc/netplan/01-netcfg.yaml
network: version: 2 renderer: networkd ethernets: ens3: dhcp4: no addresses: - 192.168.121.199/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
3: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 56:00:00:60:20:0a brd ff:ff:ff:ff:ff:ff inet 192.168.121.199/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网络配置设置。单击齿轮图标。
- 将打开“网络接口设置”对话框:
- 在“ IPV4”方法部分中,选择“手动”,然后输入静态IP地址,网络掩码和网关。完成后,单击“应用”按钮。
既然我们已经设置了静态IP地址,请使用“ Ctrl + Alt + T”键盘快捷方式或者单击终端图标打开终端,然后通过键入以下内容来验证更改:
ip addr
输出将显示接口IP地址:
... 2: wlp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:e9:40:f2 brd ff:ff:ff:ff:ff:ff inet 192.168.121.106/24 brd 192.168.121.255 scope global dynamic noprefixroute ens3 valid_lft 3523sec preferred_lft 3523sec inet6 fe80::5054:ff:fee9:40f2/64 scope link valid_lft forever preferred_lft forever