ubuntu20.04设置静态IP地址

丈夫欲遂平生志,一载寒窗一举汤。这篇文章主要讲述ubuntu20.04设置静态IP地址相关的知识,希望能为你提供帮助。
ubuntu20.04 默认使用动态IP设置,但有时我们需要为其设置静态IP。本文将带着大家彻底搞清楚ubuntu20.04的IP设置方法。
如果你是在虚拟机中使用ubuntu20.04,并对虚拟机的网络设置有疑问的话请看本人的拙作 vmware虚拟机的三种网络设置
在开始之前先弄清楚networking服务和network-manager服务的区别。
networking是控制系统网络设置的,如果你修改了相关的网络配置需要重启此服务。
network-manager是管理networking服务的一个图形化管理工具的后台服务程序。
为了继续下面的操作,需要大家安装一下net-tools,以及ifupdown,并重启一下系统。

sudo apt install -y ifupdown net-tools init 6

ubuntu20.04设置静态IP地址

文章图片

联通性测试。
ubuntu20.04设置静态IP地址

文章图片

一切正常。
ubuntu20.04设置静态IP地址

文章图片

至此大家对network-manager有没有印象了?
继续。
接下来咱们通过修改`/etc/network/interfaces来配置ubuntu20.04的静态IP地址。
先来查看一下修改之前的IP地址。
ubuntu20.04设置静态IP地址

文章图片

vim /etc/network/interfaces

在文件interfaces中添加如下内容。
auto lo iface lo inet loopbackauto ens33 iface ens33 inet static address 192.168.2.117 netmask 255.255.255.0 gateway 192.168.2.1

:notebook: 此处的address修改成了192.168.2.117
我先重启一下network-manager
再查看一下系统的IP地址,你会发现并没有改变。
ubuntu20.04设置静态IP地址

文章图片

我们再重启一下networking服务吧。
systemctl restart networking

【ubuntu20.04设置静态IP地址】
ubuntu20.04设置静态IP地址

文章图片

已经显示修改后的IP了。
:notebook: 如果通过systemctl restart networking也无法正常显示修改后的IP的话,可以重启一下系统。:question: 不知此处是不是ubuntu的bug:bug:
再用ip a查看一下
ubuntu20.04设置静态IP地址

文章图片

联通性测试
ping baidu.com

ubuntu20.04设置静态IP地址

文章图片

网络不通,上述信息提示是因为没有设置DNS
:notebook:修改/etc/systemd/resolved.conf而不是修改/etc/resolved.conf,如果修改/etc/resolved.conf,重启系统DNS会失效。
su echo "DNS=192.168.2.1 8.8.8.8" > > /etc/systemd/resolved.conf systemctl restart systemd-resolved

:notebook: 多个DNS之间用空格分开。
ubuntu20.04设置静态IP地址

文章图片

重启系统再测试也没问题。
至此通过修改/etc/network/interfaces 文件的方式来配置静态IP的工作完成。
但是通过上述方法修改的静态IP你会发现在桌面右上角的网络图标上有一个" ?" .
ubuntu20.04设置静态IP地址

文章图片

对于有强迫症的人来说,会感觉非常得不爽。
systemctl stop network-manager systemctl disable networ-manager

继续上面的步骤:先开启network-manager(系统默认是开启的,上步中眼不见为净的解决方案把它关闭了。)
sudo systemctl enable network-manager sudo systemctl start network-manager

清空前面我们的interfaces文件中的配置内容。
cat /dev/null > /etc/network/interfaces

重启系统。
init 6

桌面右上角的网络图标又出现了,点击它。
ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04设置静态IP地址

文章图片

通过ip a命令检验。
ip a

ubuntu20.04设置静态IP地址

文章图片

ubuntu20.04推荐使用netplan命令设置静态IP地址。
netplan使用yaml格式的配置文件来配置网络地址。
vim /etc/netplan/01-network-manager-all.yaml

01-network-manager-all.yaml文件中renderer那一行后面添加以下内容。
ethernets: ens33: addresses: [192.168.2.116/24] gateway4: 192.168.2.1 nameservers: addresses: [192.168.2.1,8.8.8.8]

完成后的文件是下面这个样子。
# Let NetworkManager manage all devices on this system network: version: 2 renderer: NetworkManager ethernets: ens33: addresses: [192.168.2.116/24] gateway4: 192.168.2.1 nameservers: addresses: [192.168.2.1,8.8.8.8]

:notebook: 注意yaml文件是通过缩进来控制上下层级关系的,你的缩进可以是一个空格也可以是N个空格,但要在整个配置文件中要保持一致,并要注意在冒号的后面加一个空格。
让配置文件生效。
netplan apply

联通性测试。
ubuntu20.04设置静态IP地址

文章图片

OK
大家可以在修改一下配置文件中的IP地址,通过netplan apply命令,地址可以立即生效。
:palestinian_territories: 设置网络常用的几个命令
# 关闭网卡 ifdown < 网卡名称> sudo ifdown ens33

ifdown: unknown interface ens33 报错的解决方法,使用命令
sudo ip link set ens33 down # 或者使用命令 sudo ifconfig ens33 down

#开启网卡 ifup < 网卡名称> sudo ifup ens33

ubuntu20.04ifup: unknown interface ens33报错的解决方法,使用命令
sudo ip link set ens33 up # 或者使用命令 sudo ifconfig ens33 up

An error occurred: NetplanApply object has no attribute state 报错的解决方法。使用命令
netplan try --state /etc/netplan


    推荐阅读