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

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

概述

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

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

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

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

usbhub

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

network topology

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

配置 Ubuntu 系统

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

  • ens160
  • enxf8e43b913cd7

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

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

    sudo ifconfig enxf8e43b913cd7 192.168.10.8/24 up
    
  2. 配置内核参数,打开 IP Forward 功能

    sudo sysctl -w net.ipv4.ip_forward=1
    

    检查是否生效

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

    sudo iptables -F
    sudo iptables -P INPUT ACCEPT
    sudo iptables -P FORWARD ACCEPT
    sudo iptables -t nat -A POSTROUTING -o ens160 -j MASQUERADE
    

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

配置开发板 (Linux)

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

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

    sudo ifconfig eth1 192.168.10.10/24 up
    

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

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

    sudo route add default gw 192.168.10.8
    

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

  3. 配置 DNS:

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

    ping www.baidu.com
    

配置开发板 (QNX)

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

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

    ifconfig eth1 192.168.10.10/24 up
    

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

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

    route -n add default 192.168.10.8
    

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

    # route -n show
    Routing tables
    
    Internet:
    Destination        Gateway            Flags
    default            192.168.8.15       UG
    ...
    

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

  3. 配置 DNS:

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

    ping www.baidu.com
    
  • 17
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
对于配置 Ubuntu 22.04.2,以下是一些建议的步骤: 1. 安装 Ubuntu 22.04.2:从 Ubuntu 官方网站下载适合你的计算机硬件架构的 Ubuntu 22.04.2 ISO 镜像文件。创建一个启动盘并将其插入计算机。启动计算机,按照屏幕上的指示进行安装。 2. 更新系统:安装完成后,打开终端并运行以下命令以更新系统软件包: ``` sudo apt update sudo apt upgrade ``` 3. 添加软件源(可选):根据你的需求,可以添加其他软件源来获取更多的软件包。例如,你可以添加第三方 PPA(Personal Package Archive)源。 4. 安装常用软件:根据你的需求,安装一些常用软件包是很有帮助的。例如,你可以安装文本编辑器、Web 浏览器、媒体播放器等。以下是一些示例命令: ``` sudo apt install vim # 安装 Vim 编辑器 sudo apt install firefox # 安装 Firefox 浏览器 sudo apt install vlc # 安装 VLC 媒体播放器 ``` 5. 配置网络连接:在系统设置中,配置你的网络连接,包括无线网络、有线网络等。 6. 配置外部设备:根据你的需要,连接并配置打印机、摄像头、外部存储设备等。 7. 自定义外观:通过系统设置中的外观选项,可以更改桌面背景、主题、图标等。 8. 安装常用开发工具(可选):如果你是开发人员,可以安装一些常用的开发工具。例如,你可以安装编程语言、集成开发环境等。 这只是一个简单的配置指南,具体的配置取决于你的需求和个人喜好。希望对你有所帮助!如有更多问题,请随时提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iBlackAngel

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值