Ubuntu修改静态IP、网关和DNS的方法总结

Ubuntu修改静态IP、网关和DNS的方法总结

ubuntu系统(其他debian的衍生版本好像也可以)修改静态IP有以下几种方法。(搜索总结,可能也不太对)

/etc/netplan (use)

Ubuntu 18.04开始可以使用netplan配置网络,其也是默认安装的。配置文件位于/etc/netplan/xxx.yaml中,netplan默认是使用NetworkManager来配置网卡信息的。

old: -- (Ubuntu 20.04.及以前版本使用)

# 可以将其修改为如下格式,来修改网卡信息
# 需要注意缩进关系,不然就会报错
network:version: 2ethernets:ens33:dhcp4: noaddresses: [192.168.16.136/24]gateway4: 192.168.16.2nameservers:addresses: [192.168.16.2][网卡2的设备名称]: dhcp4: noaddresses: [192.168.16.145/24]gateway4: 192.168.16.2nameservers:addresses: [192.168.16.2]# 然后运行,即可生效
sudo netplan apply

new: -- (Ubuntu 20.04.之后版本使用)

root@my-ubuntu-vm1:~# vi /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:ethernets:ens33:#dhcp4: truedhcp4: falseaddresses: [192.168.31.85/24]optional: trueroutes:- to: defaultvia: 192.168.31.1nameservers:addresses: [114.114.114.114]version: 2# 然后运行,即可生效
sudo netplan apply
  • ethernets: 网卡数组-------------第二层
  • ens33: 网卡名字-------------第三层
  • dhcp4: 表示通过dhcp获取ip还是配置静态ip-------------第四层
  • addresses:配置ip地址与子网掩码-------------第四层
  • gateway4: 网关-------------第四层
  • nameservers: dns服务器-------------第四层
  • addresses:dns服务器的地址列表-------------第五层

这种方法修改也比较方便。

NetworkManager

Ubuntu等带有界面的linux操作系统默认安装了NetworkManager,正常可以直接通过 系统设置 操作NetworkManager的图形化界面修改网卡的静态IP、网关和DNS。如下为ubuntu的操作界面。

同时NetworkManager一般还提供nmcilnmtui的命令,可以通过终端来修改。

  • nmcil的基本操作流程
# 显示网卡连接信息
nmcli connection show
# 短格式
nmcli con show
# 例如会返回如下信息
NAME        UUID                                  TYPE      DEVICE 
有线连接 1  ee4dce9e-bf8f-3c4b-85d5-dd5a4ac0a2f1  ethernet  ens33  # 显示网卡的具体信息
# NAME有中文的时候需要加''
# nmcli con show '有线连接 1'
nmcli con show [NAME]|[UUID]# 修改都需要 sudo 权限
# 修改对应网卡的信息
# 修改网卡的模式,自动/手动
nmcli con modify [NAME]|[UUID] ipv4.method auto|manual
# 设置为自动获取IP
nmcli con modify '有线连接 1' ipv4.method auto
# 修改IP地址
nmcli con modify [NAME]|[UUID] ipv4.addresses [ip/mask]
# 修改网关
nmcli con modify [NAME]|[UUID] ipv4.gateway [gateway]
# 修改DNS
nmcli con modify [NAME]|[UUID] ipv4.dns [dns]# 上述修改后需要重启开启网卡才能生效
nmcli con down [NAME]|[UUID]
nmcli con up [NAME]|[UUID]
# 未生效还可以尝试重启NetworkManager服务或者系统重启
sudo service network-manager restart# 完整示例
# 设置‘有线网卡 1’的IP地址为192.168.16.140,子网掩码为 255.255.255.0,网关为 192.168.16.2,DNS为 192.168.16.2
sudo nmcli con modify '有线网卡 1' ipv4.method manual
sudo nmcli con modify '有线网卡 1' ipv4.addresses 192.168.16.140/24
sudo nmcli con modify '有线网卡 1' ipv4.gateway 192.168.16.2
sudo nmcli con modify '有线网卡 1' ipv4.dns 192.168.16.2
sudo nmcli con down '有线网卡 1'
sudo nmcli con up '有线网卡 1'
  • nmtui的基本操作流程

在终端中输入nmtui就会进入修改网卡信息的终端ui界面中,根据操作提示修改即可,注意修改后,需要重启网卡,启用连接 -> [选择对应的网卡] -> 禁用 -> 启用,修改才会生效。修改失败的话,就sudo nmtui再试试

通过图形化界面、nmcli指令和nmtui指令操作,最终的配置信息都保存在/etc/NetworkManager文件夹中,网卡的配置文件在/etc/NetworkManager/system-connections文件夹中,也可以直接修改网卡配置文件来修改IP等,注意修改前最好备份一下配置文件。

经过测试,修改后需要重启NetworkManager服务后,再重启网卡,修改才能生效。

# 修改配置文件
sudo vim /etc/NetworkManager/system-connections/[网卡NAME]# 重启NetworkManager服务
sudo service network-manager restart
# 重启网卡
sudo nmcli con down [NAME]|[UUID]
sudo nmcli con up [NAME]|[UUID]

/etc/network/interface

可以通过修改/etc/network/interface来配置网络,由于我们默认是通过NetworkManager修改网卡信息的,所以一开始interface文件中没有其他网卡的信息。

可以在文件后面添加需要修改的网卡信息。

# /etc/network/interface文件后添加
auto [网卡名称]                    #要设置的网卡设备名称,如 auto ens33
iface [网卡名称] inet static     #设置静态IP;如果是使用自动IP用 dhcp
address xxx.xxx.xxx.xxx            #IP地址
netmask xxx.xxx.xxx.xxx         #子网掩码
gateway xxx.xxx.xxx.xxx         #网关# 修改完成后,重启网络服务
service networking restart

经过测试,有时候重启服务和重启网卡并不能生效,需要系统重启后生效,同时这个时候系统设置中的NetworkManager 就不太正常了。

这种方法不能一起修改DNS,需要修改另外一个配置文件/etc/resolv.conf,具体详见这个博客ubuntu修改ip。但是我的ubuntu18.04的虚拟机中已经没有resolvconf这个服务了。具体见这个博客Ubuntu 手动配置DNS。

目前还不太会通过/etc/resolv.conf修改DNS,不建议使用这种方法修改DNS。

ifconfig临时修改IP

# 需要sudo权限
# 临时修改ip
ifconfig [网卡设备名称] [ip地址] netmask [子网掩码]
# ifcogfin ens33 192.168.16.139 netmask 255.255.255.0# 启用\关闭网卡
ifconfig [网卡名称] up
ifconfig [网卡名称] down

设置网关使用其他的命令

# 设置网关,未测试
sudo route add default gw 192.168.2.254

设置DNS详见3。

总结

  • NetworkManager: NetworkManager是一个用于管理网络连接的守护进程。它在现代Linux发行版中广泛使用,并提供图形用户界面和命令行工具来管理网络设置。它可以动态管理网络配置,包括有线、无线和VPN连接等。Ubuntu系统是默认使用NetworkManager。
  • /etc/netplan/: 这是Ubuntu 18.04及更高版本中使用的网络配置工具。Netplan允许您使用YAML格式定义网络配置,包括IP地址、网关、DNS等。Netplan会将配置转换为其他配置文件(如NetworkManager或systemd-networkd),从而应用新的网络设置。
  • /etc/network/interfaces: 这是Debian和Ubuntu等一些Linux发行版中用于配置网络接口的文件。它定义了网络接口的基本设置,例如IP地址、网关和子网掩码等。
  • ifconfig 命令通过调用系统调用以及与内核的交互来实时获取网络接口的信息。它获取到的信息是当前内核中网络接口的实时状态,而不是从配置文件中读取的静态配置信息。在Ubuntu中,使用ifconfig命令修改网卡的IP地址是临时的,不会修改任何配置文件。ifconfig命令用于动态地配置网络接口,所做的更改只会在下次系统重启时失效。

前两个都操作起来更方便。第三个修改DNS还不太会,如果单纯修改IP地址和网关还行。第四个是临时修改。

对于前三者的优先级,在配置了/etc/netplan/etc/network/interfaces的时候,系统重启后,NetworkManager好像就直接挂掉了,IP和网关是由/etc/network/interfaces设置决定,如果我再运行sudo netplan apply/etc/netplan中的配置就会生效;但系统重启后还是由/etc/network/interfaces决定。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

数学建模——统计回归模型

一、基本知识 1、基本统计量 总体:研究对象的某个感兴趣的指标。样本:从总体中随机抽取的独立个体X1,X2,…,Xn,一般称(X1,…,Xn)为一个样本,可以看成一个n维随机向量,它的每一取组值(x1,…,xn)称为样本的观测值。统计…

哈希 -- 开散列

unordered_map和unordered_set 哈希/散列 -- 值跟存储位置建立映射关系 当不同的值映射到了相同的位置 -- 哈希冲突 / 哈希碰撞 开放定址法: a.线性探测 b.二次探测 负载因子: 越大冲突概率越大 越小冲突的概率越小 但是当负载因子到一个基准值…

yolov5的改进思想

Yolo v5一共有四个模型,分别为Yolov5s、Yolov5m、Yolov5l、Yolov5x。 Yolov5s网络最小,速度最少,AP精度也最低,如果检测的以大目标为主,追求速度,倒也是个不错的选择。 其他的三种网络,在此基础上,不断加深加宽网络,AP精度也不断提升,但速度的消耗也在不断增加。 …

黄金代理如何选择平台?窍门在这儿

作为一个黄金代理平台,什么才是最重要的呢?笔者认为以下三个方面是最重要的,一个是资质,第二个是口碑,第三个是平台的软件。这三者是成为黄金代理要考虑的最重要的三个因素,也直接关系大黄金代理的职业生涯…

ESP32低功耗蓝牙BLE通信

ESP32低功耗蓝牙BLE通信 蓝牙分类GATT协议GATT角色ESP32蓝牙简介ESP32开发板作为BLE服务设备或扫描设备手机APP连接作为BLE Server的ESP32总结 蓝牙分类 经典蓝牙Classic Bluetooth):用于数据量比较大的传输,如:图像、视频、音乐…

GaussDB技术解读系列:性能调优

近日,在第14届中国数据库技术大会(DTCC2023)的GaussDB“五高两易”核心技术,给世界一个更优选择专场,华为数据库技术专家李士福详细解读了GaussDB性能调优的相关技术和应用实践。 本篇为大家分享GaussDB性能调优的实践…

网络爬虫——HTTP和HTTPS的请求与响应原理

目录 一、HTTP的请求与响应 二、浏览器发送HTTP请求的过程 三、HTTP请求方法 四、查看网页请求 五、常用的请求报头 六、服务端HTTP响应 七、常用的响应报头 八、Cookie 和 Session 九、响应状态码 十、网页的两种加载方法 十一、认识网页源码的构成 十二、爬虫协议…

【大数据开发技术】实验04-HDFS文件创建与写入

文章目录 一、实验目标二、实验要求三、实验内容四、实验步骤 一、实验目标 熟练掌握hadoop操作指令及HDFS命令行接口掌握HDFS原理熟练掌握HDFS的API使用方法掌握单个本地文件写入到HDFS文件的方法掌握多个本地文件批量写入到HDFS文件的方法 二、实验要求 给出主要实验步骤成…

uniapp——ios证书申请——详细步骤+遇到的坑——技能提升

三年前,我曾经写过uniapp的程序,时隔三年,又遇到了uniapp的需求,之前没有自行申请ios证书,现在终于要自己生成证书了。。。 是福不是祸,是祸躲不过。 uniapp生成ios证书的详细步骤 uniapp对接unipush的操作…

buuctf web [ACTF2020 新生赛]Upload

明了但不明显的文件上传 传个试试 行,抓包吧,php格式不行,就先上传要求的格式:jpg、png、gif 抓到上传的包之后,再修改成我们想要的 常见的php格式绕过有:php,php3,php4,php5,phtml,pht 挨个试试 这是上个…

第九章 常用服务器的搭建

第九章 常用服务器的搭建 1.配置FTP服务器 1.1.FTP简介 ​ FTP(File Transfer Protocol,文件传送协议)是TCP/IP网络上两台计算机间传送文件的协议,FTP是在TCP/IP网络和Internet上最早使用的协议之一,它属于网络协议…

【pytest】conftest.py使用

1. 创建test_project 目录 test_project/sub/test_sub.py def test_baidu(test_url):print(fsub {test_url}) test_project/conftest.py 设置钩子函数 只对当前目录 和子目录起作用 import pytest #设置测试钩子函数 pytest.fixture() def test_url():return "http…

可以创业,也可以副业的网上长期挣钱的项目

在这个飞速发展的互联网时代,越来越多的人开始尝试在网上创业或者寻找一份可持续的副业来增加收入。不过在网上赚钱的难度是比较大的,不是轻易就能做到的,所以不付出一番努力,没有悟性和执行力,那么是很难做好的&#…

淘天集团联合爱橙科技开源大模型训练框架Megatron-LLaMA

9月12日,淘天集团联合爱橙科技正式对外开源大模型训练框架——Megatron-LLaMA,旨在让技术开发者们能够更方便地提升大语言模型训练性能,降低训练成本,并保持和LLaMA社区的兼容性。测试显示,在32卡训练上,相…

pytorch环境搭建到pycharm项目映射配置(成功后回顾性记录/自用)

利用Anaconda创建pytorch虚拟环境 前提:成功安装Anaconda,确保可以打开NVIDIA控制面板 开始-》搜索“Anaconda Prompt” 打开后输入:conda create -n 你的虚拟环境名 python3.9。输入y,继续安装,完成。 输入&#…

【STM32学习】I2C通信协议 | OLED屏

🐱作者:一只大喵咪1201 🐱专栏:《STM32学习》 🔥格言:你只管努力,剩下的交给时间! 今天需要将代码烧录到开发板中,本喵默认大家都会创建工程,以及进行基本的…

A股风格因子看板 (2023.09 第07期)

该因子看板跟踪A股风格因子,该因子主要解释沪深两市的市场收益、刻画市场风格趋势的系列风格因子,用以分析市场风格切换、组合风格景露等。 今日为该因子跟踪第7期,指数组合数据截止日2023-08-31,要点如下 近1年A股风格因子收益走…

【ELFK】之消息队列kafka

一、kafka的定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列(MQ,Message Queue),主要应用于大数据实时处理领域。Kafka 是最初由 Linkedin 公司开发,是一个分布式、支持分区的(partition&#xff0…

ImageJ查看图像灰度值矩阵及像素编号从0开始

ImageJ查看图像灰度值矩阵 imagej打开一幅图像 然后image —— transform——image to results,等一下就会出现灰度值矩阵 我读取的如下,可以看出,imagej对像素的编号是从0开始的,切记!!!跟C/…

编译原理.龙书学习1

第一章: 编译器:将程序翻译成一种能够被计算机执行的形式 解释器:解释器直接利用用户提供的输入执行源程序中指定的操作 一个编译器的结构 编译器将源程序映射为语义上等价的目标程序,这个映射过程由两部分组成:分析…