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.pswp.cn/news/34974.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/34974.shtml
英文地址,請注明出處:http://en.pswp.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…