Ubuntu18.04配置静态ip遇到的报错

说明:
因为很多测试环境在这个Ubuntu系统上装着,却由于虚拟服务器的重启、断电,每次Ip发生变化,就得更新环境,所以需要把该环境的ip配置成静态的,一劳永逸。

根据以往配置Ubuntu静态ip的经验,直接 vi /etc/network/interfaces 在该文件下配置了静态ip,重置网络后发现并没有生效

所以查了ubuntu版本,是18.04,然后百度,发现“ubuntu从17.10开始,已放弃在/etc/network/interfaces里固定IP的配置,即使配置也不会生效,而是改成netplan方式 ,配置写在/etc/netplan/01-netcfg.yaml或者类似名称的yaml文件里”,所以根据查到的方法进行配置,结果遇到好多报错,差点吐血,这里记下自己遇到的报错
在这里插入图片描述

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]
3、按照上面的办法解决后如下图执行netplan apply又报错:Error in network definition //etc/netplan/01-netcfg.yaml line 8 column 16: expected scalar
在这里插入图片描述
解决办法:gateway4的地址没有中括号,修改后重启网络服务就正常了(netplan apply)

所以正确的配置格式应该如下:这样就成功配置了静态ip
在这里插入图片描述

我没遇到的报错:

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

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值