ubuntu 20.04 RK3568网络的优先级设置

1、背景

     硬件使用RK3568 CPU,操作系统采用ubuntu 20.04  Lxqt桌面的版本。硬件上具有一个有线以太网卡,一个wifi网卡,一个5G网卡。由于操作系统默认的网络优先级为有线网卡的最高,5G网卡次之。在一个业务应用中需要5G网卡的连接外网,具有最高的优先级,以太网卡次之,wifi网卡不用,因此不用管优先级。有线以太网卡的IP是使用netplan来配置的。配置ip.ymal文件如下:这个文件中有一个metric的配置,配置值为100,配置的结果是静态路由IP 的metric值为100, 但是不能改变默认的IP 路由metric值,因此达不到效果。

# Let NetworkManager manage all devices on this system
network:version: 2renderer: NetworkManagerethernets:eth0:dhcp4: nodhcp6: no addresses: [10.10.26.200/24]gateway4: 10.10.26.1nameservers:addresses: [114.114.114.114, 8.8.8.8]routes:- to: 0.0.0.0     #路由via: 10.10.26.1 #网关metric: 200     #优先级 

      从下面可以看出default eth0的默认路由的metric 还是100,没有起作用。因此不能使用netplan来修改路由的优先级。

default via 10.10.26.1 dev eth0 proto static metric 100
2.0.0.0/24 via 10.8.214.161 dev tun0
10.8.0.1 via 10.8.214.161 dev tun0
10.8.214.161 dev tun0 proto kernel scope link src 10.8.214.162
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.2 metric 200
192.168.225.0/24 dev enx92b29a5908c4 proto kernel scope link src 192.168.225.2 metric 101

2、 NetworkManager的配置

        Ubuntu系统中网络管理主要使用NetworkManager来管理,因此需要从这个NetworkManager来入手,配置静态ip, 配置路由的优先级metric。

        先介绍一下背景知识,如果使用NetworkManager来管理网络链接。

要使用nmcli创建一个有线网络连接,可以按照以下步骤进行操作:

  1. 打开终端。

  2. 运行以下命令,以创建一个新的有线网络连接配置:

    nmcli connection add type ethernet con-name <connection_name> ifname <interface_name> [ipv4.method <method>] [ipv4.addresses <ip_address>] [ipv4.gateway <gateway_address>] [ipv4.dns <dns_servers>] [ipv4.dns-search <dns_search_domain>] [ipv6.method <method>] [ipv6.addresses <ip_address>] [ipv6.gateway <gateway_address>] [ipv6.dns <dns_servers>] [ipv6.dns-search <dns_search_domain>]

    其中:

    • <connection_name> 是您想要为这个连接设置的名称。
    • <interface_name> 是网络接口的名称,比如eth0
    • <method> 是IP配置的方法,可以是auto(自动获取)、manual(手动配置)或其他。
    • <ip_address> 是IPv4或IPv6的地址。
    • <gateway_address> 是IPv4或IPv6的网关地址。
    • <dns_servers> 是IPv4或IPv6的DNS服务器地址,可以使用逗号分隔多个地址。
    • <dns_search_domain> 是DNS搜索域。

    请根据您的实际需求和网络设置在命令中选择要设置的选项。

  3. 运行以下命令,以激活新创建的网络连接:

    nmcli connection up <connection_name>

    其中 <connection_name> 是您在第2步中设置的连接名称。

现在,您应该已经成功创建并激活了一个新的有线网络连接。您可以使用nmcli connection show命令列出所有网络连接,以验证新连接已经添加。

      下面是实际操作,创建一个有线以太网的链接,并且修改默认路由的优先级为200。并且激活这个以太网链接eth0-con,特别要说明的时 链接名称con-name与网卡名称ifname不能一样。

firefly@firefly:/etc/NetworkManager/system-connections$ nmcli connection add type ethernet con-name eth0-con ifname eth0
Connection 'eth0-con' (fa53d93a-e876-4653-a568-9817e5d9844c) successfully added.
firefly@firefly:/etc/NetworkManager/system-connections$ sudo vim eth0-con.nmconnection这里配置固定IP  192.168.0.2 metric=200firefly@firefly:/etc/NetworkManager/system-connections$ sudo cat eth0-con.nmconnection 
[connection]
id=eth0-con
uuid=fa53d93a-e876-4653-a568-9817e5d9844c
type=ethernet
interface-name=eth0[ethernet][ipv4]
method=manual
address=192.168.0.2/24
gateway=192.168.0.1
dns=8.8.8.8;114.114.114.114
route-metric=200[ipv6]
addr-gen-mode=stable-privacy
method=autofirefly@firefly:/etc/NetworkManager/system-connections$ nmcli connection up eth0-con
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5)
firefly@firefly:/etc/NetworkManager/system-connections$ 

     经过上面的操作后,重启一下设备,可以使用ip route show来看一下。可以看到eth0网口的默认路由优先级为200了,比5G网卡enx92b29a5908c4 路由优先级101小了。因此默认的对外上网通道变成eth0有线网卡。

firefly@firefly:~$ ip rout show
default via 192.168.225.1 dev enx92b29a5908c4 proto dhcp metric 101
default via 192.168.0.1 dev eth0 proto static metric 200
2.0.0.0/24 via 10.8.214.161 dev tun0
10.8.0.1 via 10.8.214.161 dev tun0
10.8.214.161 dev tun0 proto kernel scope link src 10.8.214.162
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.2 metric 200
192.168.225.0/24 dev enx92b29a5908c4 proto kernel scope link src 192.168.225.2 metric 101

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

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

相关文章

文本三剑客之grep命令和awk命令 1.0 版本

grep awk 1.grep命令1.1 基本格式1.2 常用选项 2.awk命令2.1 awk工作原理2.2 awk命令格式2.3 awk常用内置变量 1.grep命令 1.1 基本格式 grep [选项]… 查找条件 目标文件1.2 常用选项 选项功能 -m [ x ]匹配x次 后停止,x为具体数字-v取反 -i忽略字符大小写 -n显示匹配的 …

Dynamic CRM开发 - 实体介绍

实体简介 在CRM中,实体(Entity)是数据的基本载体,也是构建业务逻辑网络的基础节点。 实体可以理解为数据库中的一张表(实体中的字段对应数据库表的字段),比如创建一个实体存储客户信息,创建一个实体存储产品信息,产品实体里可以创建一个查找类型的字段(类似表的外键)…

【Express.js】集成RabbitMQ

集成RabbitMQ 本节我们介绍在 express.js 中集成 rabbitmq. RabbitMQ 是一个消息队列中间件&#xff0c;常用于请求削峰&#xff0c;事务的队列处理&#xff0c;事件订阅机制的实现等。 准备工作 创建一个 express.js 项目&#xff08;本文基于evp-express-cli&#xff09;…

【三维编辑】Seal-3D:基于NeRF的交互式像素级编辑

文章目录 摘要一、引言二、方法2.1.基于nerf的编辑问题概述2.2.编辑指导生成2.3.即时预览的两阶段学生训练 三、实验四、代码总结 项目主页: https://windingwind.github.io/seal-3d/ 代码&#xff1a;https://github.com/windingwind/seal-3d/ 论文: https://arxiv.org/pdf/23…

创建一个Spring Boot项目

安装所需软件&#xff1a;首先确保你的计算机上已经安装了Java JDK和Maven构建工具。你可以从官方网站下载并按照说明进行安装。 创建一个新的Spring Boot项目&#xff1a;在命令行或终端中使用Maven命令创建一个新的Spring Boot项目。执行以下命令&#xff1a;mvn archetype:…

阿里云轻量应用服务器_2核4G4M_2核2G3M_性能测评

阿里云轻量应用服务器2核2G3M带宽108元一年&#xff0c;系统盘为50GB高效云盘&#xff1b;轻量服务器2核4G4M带宽&#xff0c;60GB高效云盘297.98元12个月。目前轻量应用服务器只有2核2G和2核4G有活动&#xff0c;阿里云百科分享阿里云轻量应用服务器入口&#xff1a; 目录 阿…

【Qt高阶】老Qt都不一定清楚的“QObject线程亲和性”【2023.08.13】

老Qt都不一定清楚的“线程亲和性” 与题目无关 感觉自己还挺2&#xff0c;有粉丝点了那个契约者会给up发个鼓励的话&#xff0c;我还以为是人私信发的&#xff0c;都挨个感谢了&#xff0c;后来才意识到是系统自动发的&#x1f623;&#x1f623;&#x1f623;。 自上上期视频对…

Three.js阴影

目录 Three.js入门 Three.js光源 Three.js阴影 Three.js纹理贴图 使用灯光后&#xff0c;场景中就会产生阴影。物体的背面确实在黑暗中&#xff0c;这称为核心阴影&#xff08;core shadow&#xff09;。我们缺少的是落下的阴影&#xff08;drop shadow&#xff09;&#…

【数据结构】——栈、队列的相关习题

目录 题型一&#xff08;栈与队列的基本概念&#xff09;题型二&#xff08;栈与队列的综合&#xff09;题型三&#xff08;循环队列的判空与判满&#xff09;题型四&#xff08;循环链表表示队列&#xff09;题型五&#xff08;循环队列的存储&#xff09;题型六&#xff08;循…

一文揭秘饿了么跨端技术的演进、实践与落地

跨端技术背景与演进历程 跨端&#xff0c;究竟跨的是哪些端&#xff1f; 自 90 年的万维网出现&#xff0c;而后的三十多年&#xff0c;我们依次经历了 PC 时代、移动时代&#xff0c;以及现在的万物互联&#xff08;的 IoT &#xff09;时代&#xff0c;繁荣的背后&#xff…

【Apollo】Apollo-ros版本架构学习与源码分析

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍Apollo-ros版本架构学习与源码分析。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&a…

微信小程序如何自定义分享卡片文案和图片

微信小程序提供了onShareAppMessage方法&#xff0c;专门用来监听用户点击页面内转发按钮&#xff08;button 组件 open-type"share"&#xff09;或右上角菜单“转发”按钮的行为&#xff0c;并自定义转发内容。 > 注意&#xff1a;只有定义了此事件处理函数&…

Android studio 设置安卓手机

参考这个链接 ghttps://developer.android.com/studio/debug/dev-options 列出常用手机的设置&#xff0c;但是我的手机不在此列 Google Pixel Settings > About phone > Build number Samsung Galaxy S8 and later Settings > About phone > Software informa…

git: ‘lfs‘ is not a git command. see ‘git --help‘

在克隆hugging face里面的项目文件的时候&#xff0c;需要用到git lfs&#xff0c;本文介绍安装git lfs方法 在Ubuntu下 curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash sudo apt-get install git-lfs在Windows下 到这个链…

解决GitHub的速度很慢的几种方式

1. GitHub 镜像访问 这里提供两个最常用的镜像地址&#xff1a; https://hub.njuu.cf/search https://www.gitclone.com/gogs/search/clonesearch 也就是说上面的镜像就是一个克隆版的 GitHub&#xff0c;你可以访问上面的镜像网站&#xff0c;网站的内容跟 GitHub 是完整同步…

期权定价模型系列【4】—期权组合的Delta-Gamma-Vega中性

期权组合的Delta-Gamma-Vega中性 期权组合构建时往往会进行delta中性对冲&#xff0c;在进行中性对冲后&#xff0c;期权组合的delta敞口为0&#xff0c;此时期权组合仍然存在gamma与vega敞口。因此研究期权组合的delta-gamma-vega敞口中性是有必要的。 本文旨在对delta-gamma-…

关于新手学习STM32开发应该如何入门?

对于新手来说&#xff0c;学习STM32开发可能会感到困惑&#xff0c;尤其是在拿到开发板后该如何入门。在这里有嵌入式学习路线&#xff0c;毕设&#xff0c;各种项目&#xff0c;需要留个6。以下是部分内容概述&#xff1a;硬件介绍&#xff1a;了解STM32开发板的基本硬件组成和…

Springboot 默认路径说明

Spring Boot基本上是Spring框架的扩展&#xff0c;它消除了设置Spring应用程序所需的样板配置&#xff0c;极大的方便了开发者&#xff0c;其默认识别路径如下&#xff1a; Spring Boot 作为Spring默认将 /** 所有访问映射到以下目录&#xff1a; 1、classpath:/static 用于加…

【密码学】穴居人密码

穴居人密码 文字记载中&#xff0c;有时会把来自古希腊文化之前的各种记录作为密码学的例子&#xff0c;但称它们为密码学一定太不严格了&#xff0c;这是因为那些方法都太原始了。密码学的起源能追溯到多早&#xff0c;取决于你把密码学的相关定义确定得有多宽泛。大多数作者都…

每日后端面试5题 第四天

1. 线程池的核心参数&#xff08;高薪常问&#xff09; &#xff08;1&#xff09;corePoolSize&#xff1a;核心线程个数 &#xff08;2&#xff09;maximumPoolSize&#xff1a;最大线程个数 &#xff08;3&#xff09;keepAliveTime&#xff1a;最大存活时间 &#xff0…