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 模式:

bash 复制代码
iw list

在输出中查找 Supported interface modes,确认是否有 mesh point。若支持,继续后续步骤;若不支持,则需更换网卡。

2. 安装 iw 工具

若系统中未安装 iw,执行以下命令安装:

bash 复制代码
sudo apt-get update
sudo apt-get install iw

3. 查看无线网卡名称

运行以下命令,确认无线网卡的接口名称(通常为 wlan0wlp2s0):

bash 复制代码
ip link

记下您的网卡名称,后续步骤将以 wlan0 为例。

4. 关闭无线网卡

在配置前,先关闭网卡:

bash 复制代码
sudo ip link set wlan0 down

5. 设置为 Mesh 模式

将网卡设置为 Mesh Point 模式:

bash 复制代码
sudo iw dev wlan0 set type mp

6. 配置 Mesh ID 和频道

为 Mesh 网络设置标识符(Mesh ID)和频道:

bash 复制代码
sudo iw dev wlan0 set meshid MyMeshNetwork
sudo iw dev wlan0 set channel 6
  • MyMeshNetwork:自定义 Mesh ID,同一网络中的设备需保持一致。
  • 6:频道号(范围 1-11),需与其他设备一致。

7. 开启无线网卡

重新启用网卡:

bash 复制代码
sudo ip link set wlan0 up

8. 分配 IP 地址

为 Mesh 接口分配静态 IP 地址(例如 192.168.1.1):

bash 复制代码
sudo ip addr add 192.168.1.1/24 dev wlan0

同一网络中的其他设备可设置为 192.168.1.2 等,确保在同一网段(192.168.1.0/24)。

9. 验证配置

检查网卡是否成功配置为 Mesh 模式:

bash 复制代码
iw dev wlan0 info

确认 type 显示为 mesh point

完整命令示例

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

bash 复制代码
# 确认网卡支持 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 地址是否在同一网段。
  • 查看配置:

    bash 复制代码
    iw dev wlan0 info    # 查看 Mesh 配置
    ip addr show wlan0   # 查看 IP 配置

总结

通过以上步骤,您可以在 Ubuntu 上快速配置无线网卡为 Mesh 模式并加入 Mesh 网络。Mesh 网络提供去中心化的通信方式,适用于多种场景。希望本指南对您有所帮助!

相关推荐
写文章的大米3 分钟前
Redisson 实现分布式锁实战指南
分布式·后端
古德赖可可9 分钟前
Linux之编辑器vim命令
linux·编辑器·vim
__Benco15 分钟前
OpenHarmony子系统开发 - init启动引导组件(四)
linux·人工智能·harmonyos
debug_cat27 分钟前
AndroidStudio导入jar,aar到项目kts/groovy方式
android·linux·android studio·jar
火车叼位35 分钟前
OpenWRT服务异常的日志追踪技巧
linux·shell
IT 小旋风37 分钟前
CentOS 7 挂载与卸载文件系统笔记
linux·笔记·centos
唐青枫37 分钟前
Linux ar 命令使用详解
linux
M1A11 小时前
基于VMware的Linux安装教程,简单易懂
linux
多多*1 小时前
Springboot整合elasticsearch详解 封装模版 仓库方法 如何在linux里安装elasticsearch
java·linux·spring boot·redis·mysql·elasticsearch·java-ee
yong15858553431 小时前
Linux 中进程的 nice 值对程序的占用的影响测试
linux·运维·服务器