当前位置: 首页 > news >正文

开发板通过 Ubuntu/Linux 连接外网

文章目录

  • 开发板通过 Ubuntu/Linux 连接外网
    • 概述
    • 配置 Ubuntu 系统
    • 配置开发板 (Linux)
    • 配置开发板 (QNX)

开发板通过 Ubuntu/Linux 连接外网

概述

如果开发板需要访问外网,可以通过网线将开发板与 Ubuntu 系统连接起来,在 Ubuntu 系统中配置 ip_forward 让 Ubuntu 成为路由器,这样就可以将开发板与外网连接起来。

需要使用到以下一些物理设备:

  • 两个带网口的 USB Hub
  • 网线

其中带网口的 USB Hub 可以参考以下图片到京东或淘宝进行购买(仅供参考)。

带网口的 USB Hub 准备好后,一个插在开发板,另一个插到 Ubuntu 系统,中间用网线连接起来,这样它们的网络链接就打造好了。

完整的网络拓扑图如上图所示,接下来我们具体描述下配置细节。

配置 Ubuntu 系统

假如系统中原来可用于正常上网的网卡名称为ens160,插入带网口的 USB Hub 后,系统中会多出来一个新的网络设备,名称可能是enxf8e43b913cd7。则当前系统中有两个网卡设备:

  • ens160
  • enxf8e43b913cd7

其中ens160负责与外网进行通讯,enxf8e43b913cd7负责与开发板进行通讯。

  1. 首先配置enxf8e43b913cd7网卡 IP 地址

    sudoifconfigenxf8e43b913cd7192.168.10.8/24 up
  2. 配置内核参数,打开 IP Forward 功能

    sudosysctl-wnet.ipv4.ip_forward=1

    检查是否生效

    sysctlnet.ipv4.ip_forward
  3. 使用iptables命令配置路由转发功能

    sudoiptables-Fsudoiptables-PINPUT ACCEPTsudoiptables-PFORWARD ACCEPTsudoiptables-tnat-APOSTROUTING-oens160-jMASQUERADE

注意,其中比较重要的一个参数是在于最后一行的-o ens160参数,-o的长选项是--out-interface,意思是需要指定POSTROUTING的出去的接口,所以在此处指定的就是能够正常与外网通讯的ens160网卡设备。

配置开发板 (Linux)

同样的,插入带网口的 USB Hub 后,开发板中同样会多出来一个新的网络设备,估且认为它是eth1吧。eth1是与 Ubuntu 系统中的enxf8e43b913cd7相连接的设备,所以需要配置成与 Ubuntu 在同一个局域网内。

  1. 首先配置eth1网卡 IP 地址:

    sudoifconfigeth1192.168.10.10/24 up

    在板子上使用ping命令测试与 Ubuntu 系统的连接性,确保两端是正常互通。

    ping192.168.10.8
  2. 完成第一步的网络连通性测试之后,将 Ubuntu 的地址192.168.10.8设置成开发板的网关地址,让开发板能够路由出去:

    sudorouteadddefault gw192.168.10.8

    配置之后可以通过route -n命令对系统路由表进行检查。

  3. 配置 DNS:

    sudoecho"nameserver 114.114.114.114">/etc/resolv.conf
  4. 在板子上测试外网连通性:

    pingwww.baidu.com

配置开发板 (QNX)

网络 IP 配置方法及原理与上面的 Linux 版本类似,路由配置命令有点差异。

  1. 首先配置eth1网卡 IP 地址:

    ifconfigeth1192.168.10.10/24 up

    在板子上使用ping命令测试与 Ubuntu 系统的连接性,确保两端是正常互通。

    ping192.168.10.8
  2. 完成第一步的网络连通性测试之后,将 Ubuntu 的地址192.168.10.8设置成开发板的网关地址,让开发板能够路由出去:

    route-nadddefault192.168.10.8

    配置之后可以通过route -n show命令对系统路由表进行检查。命令正常执行后会输出如下内容:

    # route -n showRouting tables Internet: Destination Gateway Flags default192.168.8.15 UG...

    QNX 的route命令与 Linux 的不太一样,具体用法可以参考官方文档:「qnx route 命令用法」

  3. 配置 DNS:

    echo"nameserver 114.114.114.114">/etc/resolv.conf
  4. 在板子上测试外网连通性:

    pingwww.baidu.com
http://www.gsyq.cn/news/1642700.html

相关文章:

  • 3 种梯度计算方式对比:数值微分、符号微分与反向传播的效率分析
  • 大数据原生集群 (Hadoop2.X为核心) 本地测试环境搭建二
  • 水利枢纽三维智能监控技术解析与应用
  • MobaXterm连接RedHat服务器SSH密钥登录失败排查与配置详解
  • 医学影像异常检测:MVFA框架的零样本与少样本实践
  • ICM-42688-P与MKV44F64VLH16在工业自动化中的高性能应用
  • Spring Boot与Vue3前后端RSA加密登录实战:原理、实现与安全优化
  • 工业级传感器与执行器控制方案:基于AD74115H与STM32F765ZI
  • YOLOv12遥感目标检测:MGCM模块创新与应用
  • 洛雪音乐全网音源完全指南:从零开始打造你的个性化音乐库
  • 通义App:Qwen3大模型的终极交互载体与体验中枢
  • 如何重构现有RAG系统:模块化多模态集成技术指南
  • Redis 主从复制,哨兵,集群——(1)主从复制篇
  • SARCLIP框架:多模态预训练提升SAR图像理解
  • Steam ROM Manager:告别游戏库混乱,打造你的终极游戏收藏中心
  • 一键转换PDF、Word、Excel等数十种文档到Markdown:MarkItDown终极指南
  • Wireshark实战:从CTF流量分析到网络安全排查核心技巧
  • Windows上配置完整Linux开发环境(二):Linux发行版Anaconda安装与使用
  • docker-flask-example数据库管理:使用Flask-DB进行迁移与种子数据操作
  • 技术问答:管理和选择不同的R,如何做好R的笔记,使用 openxlsx 包
  • accounting.js技术架构与React集成:现代前端货币格式化解决方案
  • 网线4、6未交叉,导致设备联网有问题
  • VCPToolBox深度解析:从工具调用到AI生存环境的3大范式突破
  • 翻译Self-Prompt Mechanism for Few-Shot Image Recognition
  • Playwright CLI:面向AI编码代理的浏览器自动化完整指南
  • Win11Debloat:三步打造你的专属Windows系统优化方案
  • TPS65263三重降压转换方案在嵌入式系统中的应用
  • 如何快速检测Mac应用是否原生支持Apple Silicon芯片?Silicon工具完全指南
  • 从混乱到优雅:SQL Formatter如何让你的数据库查询代码焕然一新
  • abawuwao实战指南:基于Wan 5B的图像文本到视频AI模型深度解析