当前位置: 首页 > news >正文

设置linux静态IP

方法一
Ubuntu 18.04采用netplan来管理网络配置计划,在/etc/netplan/目录下有一个以yaml结尾的文件,例如00-installer-config.yaml,不同版本的系统这个文件名可能会有些差异,但是不影响,以实际为准。

步骤1:

先ifconfig查看电脑的网卡信息:
在这里插入图片描述

找到物理网卡的名称,我这里是ens33,其他几个是虚拟网卡和本地回环,不用管。

步骤2:

输入route -n命令,打印路由表,这里主要是为了查看网关地址,后续会用到
在这里插入图片描述
我这里网关地址是192.168.255.0

步骤3:

输入

sudo nano /etc/netplan/00-installer-config.yaml

,编辑yaml文件,注意这里需要sudo权限。
在这里插入图片描述

network:version: 2renderer: networkdethernets:ens33:dhcp4: falseaddresses: [192.168.255.139/24]routes:- to: 0.0.0.0/0via: 192.168.255.2nameservers:addresses: [8.8.8.8, 8.8.4.4]

Ctrl + O → 按 Enter 保存
Ctrl + X → 退出

根据实际需要依次设置ens33网卡的静态IP地址、网关、DNS,dhcp4设置为false,最后一行添加:renderer: networkd。注意缩进对齐,并且每个冒号后面要跟一个空格,否则会有问题。设置好后保存退出。

步骤4:

输入命令

sudo netplan apply

使改动生效,然后reboot重启系统,就配置好了。

测试

在这里插入图片描述

结果用

 ip -4 a show ens33

验证发现:输出的里面含dynamice
说明动态IP仍然存在
NetworkManager 正在运行
dhclient 进程由 NetworkManager 启动(参数中包含 nm-dhcp-helper)
这正是导致你的静态 IP 被覆盖为 dynamic 的原因

解决方案(逐步操作)

1. 立即停止 NetworkManager 和 dhclient
sudo systemctl stop NetworkManager
sudo pkill dhclient
2. 永久禁用 NetworkManager
sudo systemctl disable NetworkManager
sudo apt purge network-manager  # 可选:彻底移除(适合服务器)
3. 清除所有 DHCP 租约文件
sudo rm /var/lib/NetworkManager/dhclient-*.lease
sudo rm /var/lib/dhcp/dhclient.*
4. 强制应用静态配置
sudo ip addr flush dev ens33
sudo ip addr add 192.168.255.139/24 dev ens33
sudo ip route add default via 192.168.255.2
5. 验证 NetworkManager 完全停止
ps aux | grep -E 'NetworkManager|dhclient'

预期输出:应只有 grep 进程自身
在这里插入图片描述

6. 检查 IP 状态
ip -4 a show ens33

在这里插入图片描述

配置成功!!!!

持久化配置

1. 确认 Netplan 配置
sudo cat /etc/netplan/00-installer-config.yaml

确保内容为:

network:version: 2renderer: networkd  # 关键:使用networkd而非NetworkManagerethernets:ens33:dhcp4: falsedhcp6: falseaddresses: [192.168.255.139/24]routes:- to: 0.0.0.0/0via: 192.168.255.2nameservers:addresses: [8.8.8.8, 8.8.4.4]
2. 应用配置
sudo netplan --debug apply

途中如果遇到问题可复制黏贴给deepseek

3. 设置开机自启脚本(可选)
sudo nano /etc/rc.local

exit 0 前添加:

ip addr add 192.168.255.139/24 dev ens33 || true

然后:

sudo chmod +x /etc/rc.local

故障排查表

现象检查命令解决方案
IP仍是dynamicip -4 a show ens33杀死所有 dhclient 进程
NetworkManager残留ps aux | grep NetworkManagersudo apt purge network-manager
路由丢失ip route show手动添加 ip route add default via 192.168.255.2

最终验证

  1. 重启测试
    sudo reboot
    
  2. 重启后检查
    ip -4 a show ens33
    systemctl status NetworkManager  # 应显示"inactive"
    

如果严格按照以上步骤操作,你的静态 IP 将永久生效。如果仍有问题,可能是系统镜像或硬件驱动层面的问题,建议提供:

  1. lsb_release -a 系统版本信息
  2. dmesg | grep ens33 驱动日志
http://www.lqws.cn/news/593551.html

相关文章:

  • 测试第六讲-测试模型分类
  • RabbitMQ - SpringAMQP及Work模型
  • 信息化项目验收,软件工程评审和检查表单
  • Qt中使用QSettings数据或结构体到INI文件
  • 边缘人工智能与医疗AI融合发展路径:技术融合与应用前景(下)
  • 区块链存证:数字时代的法律盾牌还是技术乌托邦?
  • 数据结构day5——队列和树
  • 县级智慧水务一体化方案及落地案例PPT(39页)
  • 8.Docker镜像讲解
  • 高强螺栓的计算与选用
  • 深入金融与多模态场景实战:金融文档分块技术与案例汇总
  • Qt时间显示按钮功能详解
  • 【docker】unknown shorthand flag: ‘f‘ in -f See ‘docker --help‘.
  • 实变与泛函题解-心得笔记【16】
  • Electron 应用中的内容安全策略 (CSP) 全面指南
  • MySQL索引深度解析:B+树、B树、哈希索引怎么选?
  • 机器学习在智能金融风险评估中的应用:信用评分与欺诈检测
  • day48
  • C++ 网络编程(13) asio多线程模型IOServicePool
  • CAU数据挖掘实验 表分析数据插件
  • 零信任安全管理系统介绍
  • 安防监控视频汇聚平台EasyCVR v3.7.2版云端录像无法在web端播放的原因排查和解决方法
  • 笔记本电脑怎样投屏到客厅的大电视?怎样避免将电脑全部画面都投出去?
  • Rust 是什么
  • [C#] WPF - 自定义样式(Slider篇)
  • WPF学习(三)
  • 08跨域
  • vue-i18n+vscode+vue 多语言使用
  • Mac 部署Latex OCR并优化体验(打包成App并支持全局快捷键)
  • WebSocket技术全面解析:从历史到实践