Ubuntu 18.04 设置固定的静态ip

系统版本:

root@ubuntu:/# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04 LTS
Release: 18.04
Codename: bionic
root@ubuntu:/# 


之前的版本网卡配置信息配置在/etc/network/interfaces文件,可以如下配置,

auto ens33
iface ens33 inet static
address 192.168.0.111
netmask 255.255.255.0
gateway 192.168.0.1


在18.04上也是可以用的,只是要重启才能生效。通过service networking restart无效。

下面介绍一下在18.04上新采用的netplan命令。网卡信息配置在/etc/netplan/01-network-manager-all.yaml文件,需做如下配置,如下配置需使用root账号权限修改设置

复制代码
network:
    ethernets:
        enp2s0:
                dhcp4: no
                addresses: [10.0.17.247/24]
                gateway4: 10.0.17.1
                nameservers:
                        addresses: [8.8.8.8]
    version: 2
复制代码

正确例子:

保存退出,依次按:ESC -->:wq

然后使用以下命令使配置即时生效

netplan apply

测试:

ping baidu.com成功

 

使用上面生效命令可能会报错,解决方法如下:

1、在执行netplan apply发生报错信息Invalid YAML at //etc/netplan/01-netcfg.yaml line 11 column 11: mapping values are not allowed in this context

 解决办法:yaml是层次结构,需要缩进,冒号(:)表示字典,连字符(-)表示列表,冒号出现的后面一定要空一格

2、冒号后添加空格后(如下图)再执行netplan apply又报错:Invalid YAML at //etc/netplan/01-netcfg.yaml line 11 column 6: did not find expected key

 解决办法:nameservers应该和gateway4一样是第四层,nameservers后的addresses应该是第五层
正确的层数如下

 第一层-network:
 第二层-- ethernets:
 第三层--- ens33:
 第四层----addresses:  [172.18.0.31/24]
 第四层----gateway4:  172.18.0.1
 第四层----nameservers:
 第五层-----addresses: [114.114.114.114, 8.8.8.8]

其他出现的类似错误:line8 column 6:cloud not find expected ‘:’ #提示是冒号:后面没加空格
出现类似错误:netplan found character that cannot start any token,#提示是没有按五个层次写配置文档,一定要下一层比上一层多空一格或以上。
总之:这里重启网络时报错,大多是层次不对、格式不对、没有空格

posted @   一个人的孤独自白  阅读(1393)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示