ubuntu中网卡的 IP 及网关配置设置为永久生效

要将 Ubuntu 中 ens33 和 ens36 网卡的 IP 及网关配置设置为永久生效(重启后不丢失),需通过 netplan 配置并禁用 cloud-init 对网络的干扰(避免重启后配置被覆盖),具体步骤如下:

一、最终的永久生效配置文件

编辑 /etc/netplan/00-installer-config.yaml(或系统中实际的配置文件),内容如下(以保留 ens36 网关为例):

双网卡永久网络配置

network:ethernets:ens33:  # 无网关,仅内网通信addresses: [192.168.70.XX/24]nameservers:addresses: [8.8.8.8, 114.114.114.114]# 不配置routes(无默认网关)ens36:  # 有网关,负责对外通信addresses: [192.168.1.XX/24]nameservers:addresses: [8.8.8.8, 114.114.114.114]routes:- to: defaultvia: 192.168.1.1  # 仅保留此网关version: 2renderer: networkd  # 固定网络管理器,避免冲突

二、关键步骤:禁用 cloud-init 网络管理(防止配置被覆盖)

若系统启用了 cloud-init(常见于云服务器或虚拟机),其会自动生成网络配置并覆盖手动设置,需执行以下操作禁用:

  1. 创建配置文件:

    bash

    sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
    
  2. 写入以下内容(告知 cloud-init 不管理网络):

    yaml

    network: {config: disabled}
    
  3. 保存退出(Ctrl+X → Y → 回车)。

三、应用配置并验证

  1. 测试配置语法(防止错误导致断网):

    bash

    sudo netplan try
    

    出现提示后按回车确认,若报错则根据提示修正缩进或格式。

  2. 永久应用配置:

    bash

    sudo netplan apply
    
  3. 重启服务器验证:

    bash

    sudo reboot
    
  4. 重启后检查是否生效:

    bash

    # 查看IP是否正确
    ip addr show ens33
    ip addr show ens36# 查看网关是否为ens36的192.168.1.1
    ip route show
    

总结

通过以上步骤:

  1. netplan 配置文件定义了两张网卡的静态 IP、DNS 和网关(仅 ens36 保留网关)。
  2. 禁用 cloud-init 网络管理,确保重启后手动配置不被覆盖。
  3. 配置会永久生效,无论重启多少次,IP 和网关都保持不变。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/919961.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/919961.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

不再让Windows更新!Edge游戏助手卸载及关闭自动更新

文章目录Windows系统更新问题方法一:通过注册表手动设置1. 打开注册表编辑器2. 定位到目标路径3. 创建新的DWORD值4. 修改数值方法二:命令行设置1. 打开命令提示符2. 输入命令验证设置是否生效恢复更新Edge关闭游戏助手Edge关闭后台运行Edge关闭自动更新…

css3之flex布局

flex布局要牢记的两个知识点: 开启了flex布局的元素叫flex containerflex container里面的直接子元素叫flex items 这两点要记牢,设置属性的时候才不会搞混这个是flex布局的整体图 一、flex container上的属性 1.flex-direction 修改主轴方向的属性&…

vscode 搭建C/C++开发环境搭建(linux)

1.编译器/调试器安装首先,需要安装编译器(GCC/G)和调试器(GDB),用于编译和调试代码。1.打开终端(Ctrl Alt T)2.更新软件包获取新版本信息sudo apt update3.安装build-essential包,它包含gcc,g等必要库sudo apt install…

vue-pure-admin页面引入和功能添加流程解析

vue-pure-admin (opens new window)是一款开源完全免费且开箱即用的中后台管理系统模版。完全采用 ECMAScript 模块(ESM)规范来编写和组织代码,使用了最新的 Vue3、Vite、Element-Plus、TypeScript、Pinia、Tailwindcss 等主流技术开发 以下是…

vlc-android: 编译自己的libvlc

概述 VLC 媒体播放器作为一款由志愿者开发团队精心维护的自由、开源且跨平台的多媒体播放器,能轻松驾驭绝大多数多媒体文件,无论是本地磁盘中的视频、音频,还是来自网络的流媒体协议. VLC for Android 支持网络串流,无论是基于 H…

并联谐振与串联谐振

在LC电路中,感抗和容抗相等时对应的频率值称为谐振频率,在接收广播电视信号或无线通信信号时,使接收电路的频率与所选择的发射的信号频率相同就叫做调谐。并联谐振LC并联谐振电路是指将电感器和电容器并联形成,如图所示。在并联谐…

打印机怎么连接电脑?打印机驱动?【图文详解】USB连接打印机?wifi连接打印机?

一、问题背景 在日常办公与生活里,把电脑和打印机连接起来,是实现文档、照片等打印的基础操作。但很多人初次尝试时,会因不熟悉流程而感到无从下手。 无论是办公场景下急需打印重要文件,还是日常生活中想要打印照片留念&#xff0…

CVPR 2025 | 医学影像加速进化:深度学习×多模态,精准诊断再升级

关注gongzhonghao【CVPR顶会精选】今天聊一个医学图像领域的前沿探索:结合空间感知卷积、扩散模型与视觉语言模型,从图像配准到合成分割,再到跨模态理解,打造了一个更加智能、鲁棒且可泛化的医学影像工具链。无论是SACB-Net带来的…

[每周一更]-(第157期):深入理解Go语言的垃圾回收机制:调优与监控

Go语言以其简洁的语法和强大的并发能力而闻名,而它的垃圾回收(GC)机制则是支撑其高性能的关键组件之一。本文将深入探讨Go语言的垃圾回收原理,并介绍如何对其进行调优与监控,以提升应用程序的性能。 Go语言垃圾回收机制…

Java 学习笔记(基础篇9)

1. 综合练习题目 1 :金额转换为中文大写格式请编写一个 Java 程序,实现将数字金额转换为中文大写格式(带单位)的功能,具体要求如下:(1) 程序接收用户输入的一个整数金额(范围:0-9999…

云原生俱乐部-k8s知识点归纳(5)

写到这里,k8s的内容已经到一半了,虽然后面的内容我觉得更加玄学一点。控制器真的是个神奇的东西,虽然后面的CRD会带着大家一起做一个控制器,但是还是觉得很奇妙。控制器大概就是k8s中的精华了,通过控制器去监听k8s中ap…

C++复习2

C继承 继承的概念 继承(inheritance)机制是面向对象程序设计使代码可以复用的重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称为派生类。 继承呈现了面向对象程序设计…

ZKmall模块商城的跨境电商支付安全方案:加密与权限的双重防护

跨境电商支付环节面临双重挑战:一方面,不同国家的支付协议、货币结算规则差异显著,需满足多币种、多渠道的支付需求;另一方面,跨境数据传输的安全性与操作权限的严格管控直接关系到资金安全与合规性。ZKmall 模块商城针…

【数据结构】-5- 顺序表 (下)

一、集合框架 这是 Java 集合框架(Java Collections Framework)的核心继承关系树状图1. 最顶层:Iterable(接口)作用:所有 “可迭代” 的集合(如 List、Set、Queue)都必须实现它&…

最大连续1的个数Ⅲ-滑动窗口

1004. 最大连续1的个数 III - 力扣&#xff08;LeetCode&#xff09; Solution 标准滑动窗口。 class Solution { public:int longestOnes(vector<int>& nums, int k) {int nnums.size();int l0,z_cnt0,ans0;for(int r0;r<n;r){z_cnt1-nums[r];while(z_cnt>k…

实验二 Cisco IOS Site-to-Site Pre-share Key

一 实验设备 1、 CISCO 路由器 2 台 二 实验拓扑图 三 实验配置 1、 R1 路由器上连通性配置 R1(config)#interface e0/0 R1(config-if)#ip address 192.168.1.2 255.255.255.0 R1(config-if)#no shutdown R1(config)#interface e1/0 R1(config-if)#ip address 10.1.20.1 255.25…

深入理解 Rust Axum:两种依赖注入模式的实践与对比(二)

前言 我想把使用 Rust 开发Websocket 服务的文章写成一个系列&#xff0c;前面写了一遍如何使用 Axum 搭建一个Websocket 服务的文章&#xff0c;我们可以和前端demo页面进行全双工的 Websocket 消息传输&#xff0c;而且可以启用 HTTP2 的同时启用 TLS。 这时候问题来了&…

syn与quote的使用——结构体转create语句

前言 syn和quote的简单使用——生成结构体-CSDN博客https://blog.csdn.net/qq_63401240/article/details/150609865?spm1001.2014.3001.5501 前面使用syn和quote&#xff0c;发现挺好玩的&#xff0c;感觉可以干很多事情&#xff0c;不愧是Rust中的宏。 宏分为声明宏和过程…

集中式负载均衡 vs. 分布式负载均衡

集中式负载均衡 vs. 分布式负载均衡负载均衡&#xff08;Load Balancing&#xff09;是任何可伸缩系统的“交通警察”。 集中式负载均衡&#xff08;Centralized LB&#xff09;与分布式负载均衡&#xff08;Distributed LB&#xff09;代表了两种截然不同的“指挥哲学”&#…

【机器学习】9 Generalized linear models and the exponential family

本章目录 9 Generalized linear models and the exponential family 281 9.1 Introduction 281 9.2 The exponential family 281 9.2.1 Definition 282 9.2.2 Examples 282 9.2.3 Log partition function 284 9.2.4 MLE for the exponential family 286 9.2.5 Bayes for the e…