当前位置: 首页 > 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.lryc.cn/news/578638.html

相关文章:

  • 图神经网络(篇二)-基础知识
  • 板凳-------Mysql cookbook学习 (十一--------1)
  • Conda 虚拟环境克隆与 PyCharm 配置教程
  • 【算法 day13】LeetCode 110.平衡二叉树 | 257. 二叉树的所有路径| 404.左叶子之和 |222.完全二叉树的节点个数
  • Python实例题:基于 Python 的简单爬虫与数据可视化
  • 【仿muduo库实现并发服务器】eventloop模块
  • nanoGPT复现——bench.py和sample.py
  • 【MobaXterm、Vim】使用合集1
  • 【科研绘图系列】基于R语言的复杂热图绘制教程:环境因素与染色体效应的可视化
  • 用lines_gauss的width属性提取缺陷
  • Prompt生成指南
  • Unity-ComputeShader
  • UE5.6 官方文档笔记 [1]——虚幻编辑器界面
  • C#.Net筑基-优雅LINQ的查询艺术
  • 6.2 实现文档加载和切分和简易向量数据库的功能
  • 图像处理专业书籍以及网络资源总结
  • beego打包发布到Centos系统及国产麒麟系统完整教程
  • 前端第二节(Vue)
  • 微信小程序实现table表格
  • 微信小程序21~30
  • CppCon 2018 学习:EFFECTIVE REPLACEMENT OF DYNAMIC POLYMORPHISM WITH std::variant
  • Linux->进程控制(精讲)
  • 《P5522 [yLOI2019] 棠梨煎雪》
  • 如何分析大语言模型(LLM)的内部表征来评估文本的“诚实性”
  • 在 Docker 容器中使用内网穿透
  • 大语言模型推理系统综述
  • NLP——RNN变体LSTM和GRU
  • 关于vue2使用elform的rules校验
  • 深度学习进阶:自然语言处理的推荐点评
  • (LeetCode 面试经典 150 题) 42. 接雨水 (单调栈)