ROS多機通信(四)——Ubuntu 網卡 Mesh 模式配置指南

引言

使用Ad-hoc加路由協議和直接Mesh模式配置網卡實現的網絡結構是一樣的,主要是看應用選擇,

  • Ad-Hoc模式 + B.A.T.M.A.N. / OLSR
    優點:靈活性高,適合移動性強或需要優化的復雜網絡。
    缺點:配置復雜,需手動管理路由協議。
  • Mesh模式(802.11s)
    優點:配置簡單,內置路由功能,易于部署。
    缺點:路由協議標準化,靈活性較低。
    在實現機器人之間的通信的時候,和為了適應大部分的場景我還是建議使用Ad-Hoc模式 + B.A.T.M.A.N. / OLSR
    這里是另外一篇文章的鏈接:
    Ubuntu Ad-Hoc 組網通信配置指南

基本概念

Mesh網絡是去中心化的,功能更強大。節點不僅可以直接通信,還可以通過其他節點中繼數據。每個節點都能充當路由器,自動發現和維護與其他節點的連接路徑。這種中繼機制使Mesh網絡的覆蓋范圍更大,即使某些節點失效,網絡仍能通過其他路徑繼續運行。

簡介

本指南將幫助您在 Ubuntu 系統上將無線網卡配置為 Mesh 模式(基于 IEEE 802.11s 標準),以加入或創建一個 Mesh 網絡。

前提條件

  • 硬件:無線網卡需支持 Mesh 模式(可通過 iw list 檢查是否支持 mesh point)。
  • 軟件:Ubuntu 系統(建議 20.04 LTS 或更高版本),并安裝 iw 工具。
  • 權限:需要管理員權限(使用 sudo)。

配置步驟

1. 確認網卡支持 Mesh 模式

運行以下命令,檢查無線網卡是否支持 Mesh 模式:

iw list

在輸出中查找 Supported interface modes,確認是否有 mesh point。若支持,繼續后續步驟;若不支持,則需更換網卡。

2. 安裝 iw 工具

若系統中未安裝 iw,執行以下命令安裝:

sudo apt-get update
sudo apt-get install iw

3. 查看無線網卡名稱

運行以下命令,確認無線網卡的接口名稱(通常為 wlan0wlp2s0):

ip link

記下您的網卡名稱,后續步驟將以 wlan0 為例。

4. 關閉無線網卡

在配置前,先關閉網卡:

sudo ip link set wlan0 down

5. 設置為 Mesh 模式

將網卡設置為 Mesh Point 模式:

sudo iw dev wlan0 set type mp

6. 配置 Mesh ID 和頻道

為 Mesh 網絡設置標識符(Mesh ID)和頻道:

sudo iw dev wlan0 set meshid MyMeshNetwork
sudo iw dev wlan0 set channel 6
  • MyMeshNetwork:自定義 Mesh ID,同一網絡中的設備需保持一致。
  • 6:頻道號(范圍 1-11),需與其他設備一致。

7. 開啟無線網卡

重新啟用網卡:

sudo ip link set wlan0 up

8. 分配 IP 地址

為 Mesh 接口分配靜態 IP 地址(例如 192.168.1.1):

sudo ip addr add 192.168.1.1/24 dev wlan0

同一網絡中的其他設備可設置為 192.168.1.2 等,確保在同一網段(192.168.1.0/24)。

9. 驗證配置

檢查網卡是否成功配置為 Mesh 模式:

iw dev wlan0 info

確認 type 顯示為 mesh point

完整命令示例

以下是以 wlan0 為例的完整配置流程:

# 確認網卡支持 Mesh 模式
iw list# 關閉網卡
sudo ip link set wlan0 down# 設置為 Mesh 模式
sudo iw dev wlan0 set type mp# 設置 Mesh ID 和頻道
sudo iw dev wlan0 set meshid MyMeshNetwork
sudo iw dev wlan0 set channel 6# 開啟網卡
sudo ip link set wlan0 up# 分配 IP 地址
sudo ip addr add 192.168.1.1/24 dev wlan0# 驗證配置
iw dev wlan0 info

注意事項

  • Mesh ID 和頻道:所有設備的 Mesh ID 和頻道必須一致。
  • IP 地址:確保設備 IP 在同一網段且不沖突。
  • 安全性:默認配置無加密,生產環境建議使用 wpa_supplicant 配置加密。
  • 驅動支持:部分網卡可能需要特定驅動,配置前請查閱硬件文檔。

故障排除

  • 無法連接:
    • 檢查 Mesh ID 和頻道是否一致。
    • 確認 IP 地址是否在同一網段。
  • 查看配置:
    iw dev wlan0 info    # 查看 Mesh 配置
    ip addr show wlan0   # 查看 IP 配置
    

總結

通過以上步驟,您可以在 Ubuntu 上快速配置無線網卡為 Mesh 模式并加入 Mesh 網絡。Mesh 網絡提供去中心化的通信方式,適用于多種場景。希望本指南對您有所幫助!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/74268.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/74268.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/74268.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

chap1:統計學習方法概論

第1章 統計學習方法概論 文章目錄 第1章 統計學習方法概論前言章節目錄導讀 實現統計學習方法的步驟統計學習分類基本分類監督學習無監督學習強化學習 按模型分類概率模型與非概率模型 按算法分類按技巧分類貝葉斯學習核方法 統計學習方法三要素模型模型是什么? 策略損失函數與…

爬蟲案例-爬取某站視頻

文章目錄 1、下載FFmpeg2、爬取代碼3、效果圖 1、下載FFmpeg FFmpeg是一套可以用來記錄、轉換數字音頻、視頻,并能將其轉化為流的開源計算機程序。 點擊下載: ffmpeg 安裝并配置 FFmpeg 步驟: 1.下載 FFmpeg: 2.訪問 FFmpeg 官網。 3.選擇 Wi…

車載以太網網絡測試-22【傳輸層-DOIP協議-5】

目錄 1 摘要2 DoIP時間參數2.1 ISO 13400定義的時間參數2.2 參數示例 3 DoIP節點內部狀態機4 UDSonIP概述5 總結 1 摘要 本文繼續對DOIP協議進行介紹,主要是DOIP相關的時間參數、時間參數定義以及流程示例。推薦大家對上文專題進行回顧,有利于系統性學習…

(論文總結)思維鏈激發LLM推理能力

研究背景&動機 背景:擴大模型規模已被證實具有提升模型性能和模型效率的功效,但是LLM對于完成推理、算術任務仍有較大不足。 動機:從之前的應用和研究中得知,可以用生成自然語言解釋、使用神經符號等形式語言的方法來提高大模型的算術推理能力&…

前后端開發概述:架構、技術棧與未來趨勢

一、前后端開發的基本概念 1.1 什么是前后端開發? 前后端開發是 Web 開發的兩個核心部分,各自承擔不同的職責: 前端(Frontend) 負責網頁的用戶界面(UI)和用戶體驗(UX)…

anythingLLM結合searXNG實現聯網搜索

1、docker-compose 部署searXNG GitHub - searxng/searxng-docker: The docker-compose files for setting up a SearXNG instance with docker. cd /usr/local git clone https://github.com/searxng/searxng-docker.git cd searxng-docker 2、修改 .env文件 # By default…

人形機器人科普

人形機器人(Humanoid Robot)是一種模仿人類外形和行為的機器人,通常具有頭部、軀干、雙臂和雙腿等結構。它們的設計目標是與人類環境無縫交互,執行復雜的任務,甚至在某些領域替代人類工作。 1. 人形機器人的定義與特點…

【CICD】Ansible知識庫

一、主機清單配置 1. 配置文件路徑 默認路徑 /etc/ansible/hosts 這是 Ansible 的全局默認庫存文件路徑,但許多用戶可能不會直接使用它。項目目錄或自定義路徑 用戶通常會為不同項目創建獨立的庫存文件,例如: 當前目錄下的 hosts、inventor…

ArkUI-List組件

列表是一個復雜的容器,當列表項達到一定數量,使得列表內容超出其范圍的時候,就會自動變為可以滾動。列表適合用來展現同類數據類型。 List的基本使用方法 List組件的構建聲明是這個樣子的 List(value?: {space?:number | string, initial…

Ubuntu實時讀取音樂軟件的音頻流

文章目錄 一. 前言二. 開發環境三. 具體操作四. 實際效果 一. 前言 起因是這樣的,我需要在Ubuntu中,實時讀取正在播放音樂的音頻流,然后對音頻進行相關的處理。本來打算使用的PipewireHelvum的方式實現,好處是可以直接利用Helvum…

【yolo】YOLO訓練參數輸入之模型輸入尺寸

模型輸入尺寸是YOLO訓練和推理過程中非常重要的參數之一。YOLO要求輸入圖像的尺寸是固定的,通常為正方形(如416416、640640等)。這個尺寸直接影響模型的性能和速度。以下是對模型輸入尺寸的詳細介紹: 1. 模型輸入尺寸的作用 統一…

【TI MSPM0】Timer學習

一、計數器 加法計數器:每進入一個脈沖,就加一減法計算器:每進入一個脈沖,就減一 當計數器減到0,觸發中斷 1.最短計時時間 當時鐘周期為1khz時,最短計時時間為1ms,最長計時時間為65535ms 當時…

從WebRTC到嵌入式:EasyRTC如何借助大模型提升音視頻通信體驗

隨著人工智能技術的快速發展,WebRTC與大模型的結合正在為音視頻通信領域帶來革命性的變革。WebRTC作為一種開源實時通信技術,以其低延遲、跨平臺兼容性和強大的音視頻處理能力,成為智能硬件和物聯網設備的重要技術支撐。 而EasyRTC作為基于W…

使用brower use AI 代理自動控制瀏覽器完成任務

第一步:終端運行命令下載 brower use pip install browser-use 第二步: 終端運行命令下載playwright playwright install 第三步:新建test.py代碼,粘貼復制以下代碼 import asyncio import osfrom dotenv import load_doten…

自由學習記錄(45)

頂點片元著色器(important) 1.需要在Pass渲染通道中編寫著色器邏輯 2.可以使用cG或HLSL兩種shader語言去編寫Shader邏輯 3.代碼量較多,靈活性較強,性能消耗更可控,可以實現更多渲染細節 4.適用于光照處理較少&#xf…

Quartus + VScode 實現模塊化流水燈

文章目錄 一、通過VScode編寫Verilog代碼二、模塊化編程三、代碼示例 一、通過VScode編寫Verilog代碼 1、下載Vscode 2、下載相關插件 搜索Verilog就會彈出有如圖所示的插件,下載并安裝 3、創建Quartus項目 4、創建完成后點擊Tools,選擇Options 然后在…

tryhackme——The Lay of the Land

文章目錄 一、網絡基礎設施1.1 內網1.2 DMZ區1.3 網絡枚舉(Network Enumeration) 二、域環境三、用戶和組管理四、安全解決方案4.1 基于主機的安全解決方案4.1.1 防病毒軟件4.1.2 Microsoft Windows Defender4.1.3 主機防火墻4.1.4 安全事件記錄與監控4.…

STM32---FreeRTOS消息隊列

一、簡介 1、隊列簡介: 隊列:是任務到任務,任務到中斷、中斷到任務數據交流的一種機制(消息傳遞)。 FreeRTOS基于隊列,實現了多種功能,其中包括隊列集、互斥信號量、計數型信號量、二值信號量…

2025年了,5G還有三個新變化

最近輿論開始討論5G為什么不火了?5G是不是停滯發展了。 實際上,5G不僅在發展,還迎來了它的升級版5G-A。 在今年西班牙舉行的世界移動通信大會上,5G-A就是焦點之一。 被譽為全球通信領域風向標的MWC,匯聚了華為、中興通…

SQLMesh SCD-2 時間維度實戰:餐飲菜單價格演化追蹤

場景背景:動態菜單價格管理 考慮某連鎖餐廳的菜單管理系統,需要記錄食品價格的歷史變更軌跡。業務需求包括: 記錄每次價格調整的時間點支持歷史價格查詢(如"2020年1月2日漢堡多少錢")維護當前有效價格清單…