嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三)配置网络环境

简介: 嵌入式linux/鸿蒙开发板(IMX6ULL)开发(三)配置网络环境

1.使用USB网卡直连配置网络


1.1 连接方式介绍


1.1.1 硬件资源列表


 百问网imx6ull pro开发板一套

 超六类RJ45网线至少1M长(默认配有)

 直连USB 有线网卡一个(目前测试多款网卡芯片 发现只有此款可以满足我们的日常使用需求)。


1.1.2 连接方式


请参考下图所示,连接独家直USB网卡USB端连接至电脑USB接口,另一端网卡接口插入配套的网线,网线另一端接入如下图所示的开发板网卡位置(只能接下图所示网卡)其它网卡网卡直连没法使用所有功能,连接成功后,请打开电脑启用开发板电源,参考下面 系统IP配置章节逐一配置IP地址来实现三者互通。

1670848525956.jpg


1.2 系统IP配置


1.2.1 windows配置


参考上图连接独家直连 USB网卡至电脑以后,会在设备管理器–>网络适配器下新增一个Realtek USB FE Family Controller 的网络设备(不同的电脑最后的几位字符可能不太一样),确认已经有此设备后可以继续执行下面步骤进行配置IP地址和网段等操作。

1670848544727.jpg

确认好 USB直连网卡名称后,参考下图打开控制面板–>网络和共享中心–>更改适配器设置 准备对独家直连 USB网卡进行IP配置。

1670848555404.jpg

进入网络适配器页面后,参考下图 鼠标左键点击选中 直连 USB网卡设备,选中设备后鼠标右键,在弹出的选项中点击属性按钮,之后在弹出新的属性对话框内 点击 Internet协议版本4(TCP/IPV4) 继续在新弹出的对话框参考下图图示 选中 使用下面的IP地址 输入 IP地址 192.168.5.10 子网掩码 255.255.255.0 默认网关 192.168.5.1 设置完成后,点击确定,会返回到以太网属性界面,继续点击 确定 表示windows下直连 USB网卡的IP已经配置完成。

1670848563938.jpg


1.2.2 常见问题


设备管理器里没有加载出来 Realtek USB FE Family Controller 网络设备

检查vmware是否默认将此设备连接到虚拟机,或提示选择连接到哪里


如果系统没有弹出上图所示窗口,请参考下图所示来查看此 usb网卡设备是否默认已经连接到了ubuntu,如果已连接 请参考下图所示 点击断开与主机的连接。


如果没有出现上述两种情况 但是usb网卡设备 在windows设备管理–>网络适配器内依旧没有新增设备,可能是由于驱动问题,请参考下述步骤检查并安装相应的设备驱动。


检查驱动是否正常安装

由于此usb网卡设备驱动是免驱设备,正常情况系统会自动装载此设备驱动,如没有自动安装驱动,请使用驱动精灵/驱动人生等工具自动安装。


1.2.3 vmware配置


确认windows 直连 USB网卡配置成功后,请参考下图配置vmware 虚拟网络编辑器,参考下图在开始菜单搜索 虚拟网络编辑器 搜索出来后点击Open 打开虚拟网络编辑器 在弹出的 虚拟网络编辑器页面,点击 更改设置 来修改网络配置设置桥接默认连接到 直连 USB网卡。

1670848707793.jpg

1670848714295.jpg

1670848725466.jpg

参考下图所示 点击 桥接模式 在桥接模式下的 已桥接至下拉框 点击 会显示出很多个网卡设备,我们只需要点击选中为 直连 USB网卡名称为Realtek USB FE Family Controller 的网络设备即可,选中后,点击确定即可完成vmware配置。

1670848732413.jpg


1.2.4 ubuntu配置


执行完上述配置直连网卡作为默认的桥接设备后,开打ubuntu虚拟机,在虚拟机关机状态下,点击 编辑虚拟机设置 在弹出的虚拟机设置对话框,点击 网络适配器 设置为如下图所示的桥接默认,设置成功后点击确定,表示已经设置完成,可以 开启虚拟机。

1670848744925.jpg


配置网络适配器为桥接模式后,需要进入ubuntu手动设置默认网卡的IP地址为静态IP,参考下图所示,打开 系统 Setting。

1670848755401.jpg

打开Setting后,在左侧找到 Network 选择栏,点击显示详细内容,之后点击 设置 图标,在弹出的设置界面内,点击 IPV4 切换到 IPV4 设置页面,之后继续点击 Manual 表示自己设置IP地址,在Addresses下的输入框分别填入如下所示的内容,其中 Address写入192.168.5.11 Netmask 写入 255.225.225.0 Gateway 写入 192.168.5.1,填写完成后点击 Apply 应用此设置,之后会弹出一个对话框提示输入 root用户的密码,请参考下图所示。

1670848762951.jpg

在弹出的授权请求对话框 里面输入 root用户的密码 (如果未设置root用户密码 请在ubuntu终端下使用 sudo passwd root命令来设置root用户密码),输入密码后点击 Authenticate 授权,到这里就表示IP地址已经设置成功,之后我们可以在ubuntu终端下输入 ifconfig 命令来查看IP地址是否设置正确。

1670848771250.jpg


1.2.5 开发板设置IP地址


每次开机手动设置IP地址

开发板终端下执行 ifconfig eth0 192.168.5.9 即可设置eth0网卡IP地址为192.168.5.9,设置成功后可以使用 ifconfig命令来查看已设置的IP地址,参考如下命令。

1670848781305.jpg

设置IP为固定静态IP(开机不变) 设置eth0为静态IP地址, 开发板/etc/network/目录下对interfaces文件进行修改 。

[root@100ask:~]# vi /etc/network/interfaces

修改并为如下内容,执行 :wq 保存并退出,执行/etc/init.d/S40network restart 重启网络服务。

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
 address 192.168.5.9
 netmask 255.255.255.0
 gateway 192.168.5.1

1670848801082.jpg

重启后使用ifconfig查看IP地址是否已经自动配置。

1670848808997.jpg


1.3 三者互ping验证


设置完上述IP地址后,知道了 windows ip 192.168.5.10 ubuntu ip 192.168.5.11 开发板ip 192.168.5.9 接下来验证三者是否可以互相网络通信。


1.3.1 windows ping ubuntu


在windows下使用命令提示符,输入 ping 192.168.5.11去 ping ubuntu IP地址,看是否可以接收到数据,同样的 ubuntu下在终端里输入 ping 192.168.5.10 来查看是否有数据返回,正常情况如下图所示,如果你在测试时发现只能单向Ping 通请检查windows防火墙是否全部关闭。

1670848820039.jpg


1.3.2 开发板ping windows 和 ubuntu


如下所示在开发板手动设置 ip地址为192.168.5.9 之后使用ping命令来验证是否可以ping通 ubuntu和windows主机,其中ping windows使用ping 192.168.5.10命令 ping ubuntu使用ping 192.168.5.11命令 看是否有返回值,正确情况如下图所示。

1670848835176.jpg


1.3.3 windows 和 ubuntu ping 开发板


如下图所示为windwos和ubuntu去ping 开发板IP,在windows下使用 命令提示符,执行 ping 192.168.5.9 去ping开发板,来确认是否可以和开发板网络通信,在ubuntu使用终端,执行ping 192.168.5.9去ping开发板来确认是否可以和开发板网络通信。

1670848845334.jpg



1.4 开发板使用网络服务


1.4.1 文件系统内使用nfs挂载ubuntu目录


确认windows ubuntu 开发板三者可以互相ping通以后,ubuntu下已经配置好了nfs目录及环境,可以在开发板上执行以下命令来挂载ubuntu的nfs目录到开发板/mnt目录下,挂载成功后使用df -h命令查看所有挂载。

[root@100ask:~]# mount -t nfs -o nolock,vers=3 192.168.5.11:/home/book/nfs_rootfs /mnt

1670848865595.jpg


1.4.2 开发板使用mobaxterm ssh登录开发板


确认windows ubuntu 开发板三者可以互相ping通以后,可以使用moabaxteram SSH会话远程登录开发板,操作步骤请参考下图所示。

1670848876084.jpg


1.5 其它可选配置


1.5.1 配置Ubuntu连接网络


在某些情况下 学员可能需要保证ubuntu windows 和开发板之间可以网络通信用来传输文件或者调试,又想让ubuntu可以连接网络进行安装某些在线的软件包,此时我们需要在ubuntu上再新增一个网卡设备并设置为NAT方式用于共享主机Internet网络进行上网。

首先在虚拟机关机状态下,点击 编辑虚拟机设置 在虚拟机设置里新增一个网络适配器。


进入虚拟机设置后,点击 添加–> 网络适配器–>下一步 ,之后再点击完成,即可。

1670848895824.jpg

1670848908445.jpg

添加完成 网络适配器后,会在虚拟机设置里面 出现一个 网络适配器2设备,之后我们需要设置网络连接方式 为 NAT模式 设置成功后,点击确定即可返回虚拟机启动页面,此时启动虚拟机即可。


1670848917144.jpg

启动虚拟机并进入虚拟机后,可以在终端下执行ifconfig命令查看当前网卡信息,会发现多出来一个网卡设备,其中一个是我们之前配置直连网卡桥接所用的网卡,另一个ens38(你的可能不是这个名称)已经自动配置了NAT网段的IP(如没有自动设置NAT网卡IP则在ubuntu终端下执行 sudo dhclient 来自动获取IP),之后我们可以来使用ping 来验证是否可以上网和之前的直连网卡直连是否依旧可用,使用ping qq.com 来验证是否可以连接internet网络,使用ping 192.168.5.10来验证原直连网卡直连是否有效。

1670848925567.jpg


1.5.2 常见问题1 虚拟机可以上网但是无法ping通windows和开发板


请在开始菜单 打开 虚拟网络编辑器,参考是否和下图设置一致,由于192.168.2.0/24网段已经被用于直连网卡直连所用,所以NAT模式下不能为 192.168.5.0/24网段。

1670848935694.jpg


1.5.3 配置开发板连接网路


我们的开发板一般有两个网口,其中一个被我们用来和直连 usb网卡进行连接作为调试使用,但是另一个网络可以用来进行设置上网,如果需要另一个网口上网,我们可以把网线一段接至开发板 另一端接至可以上网的路由器,之后在开发版文件系统内执行 udhcpc -i eth1 等待获取IP成功即可。


1.5.4 uboot下设置IP挂载NFS网络文件系统启动系统


问: 为什么要在开发板uboot下设置IP挂载NFS网络文件系统启动系统?

答: 在某些场景下,需要多次调试内核,存储驱动或文件系统等某个比较复杂的问题,每次通过手动拷贝重启的方式太过于繁琐缓慢,所以就通过网络方式下载到内存直接运行,文件系统也存在于ubuntu端,可以快速的去调试或定位问题。

在确认windows ubuntu 开发板三者可以互相ping通并配置好 uboot 挂载所需的nfs 根文件系统 TFTP下载所需的内核和设备树后,可以使用如下命令进行下载启动并自动挂载nfs文件系统,其中 /home/book/nfs_rootfs 为ubuntu下开发板所需的文件系统所在目录,100ask_imx6ull-14x14.dtb 为设备树文件,zImage为内核镜像文件。

setenv serverip 192.168.5.11
setenv ipaddr 192.168.5.9
setenv gatewayip 192.168.5.1
tftpboot 0x83000000 100ask_imx6ull-14x14.dtb; 
tftpboot 0x80800000 zImage; 
setenv bootargs root=/dev/nfs nfsroot=192.168.5.11:/home/book/nfs_rootfs,vers=3 rw    t  tip=192.168.5.9:192.168.5.11:192.168.5.1:255.255.255.0:ask:eth0:off:192.168.5.1; 
bootz 0x80800000 - 0x83000000 


执行上述命令后开发板会自动获取内核和设备树文件到开发板内存内,并配置文件系统参数,启动内核并自动挂载NFS文件系统。

1670848960689.jpg

1670848971641.jpg

1670848983262.jpg

如果您在文件系统启动过程中一直卡死在udhcpc获取IP处,请参考下图删除ubuntu nfs imx6ull根文件系统内 /etc/init.d目录下的 S4开头的文件,(注意是解压到nfs目录的imx6ull根文件系统,不是ubuntu的根文件系统)。


运行内核并挂载nfs文件系统成功后,可以在开发板串口终端下执行 cat /pro/mounts 来查看根目录所在位置。


2. 使用路由器配置网络(待更新)

相关文章
|
5天前
|
运维 监控 网络协议
|
1天前
|
编解码 安全 Linux
网络空间安全之一个WH的超前沿全栈技术深入学习之路(10-2):保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali——Liinux-Debian:就怕你学成黑客啦!)作者——LJS
保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali以及常见的报错及对应解决方案、常用Kali功能简便化以及详解如何具体实现
|
22小时前
|
存储 Ubuntu Linux
2024全网最全面及最新且最为详细的网络安全技巧 (三) 之 linux提权各类技巧 上集
在本节实验中,我们学习了 Linux 系统登录认证的过程,文件的意义,并通过做实验的方式对 Linux 系统 passwd 文件提权方法有了深入的理解。祝你在接下来的技巧课程中学习愉快,学有所获~和文件是 Linux 系统登录认证的关键文件,如果系统运维人员对shadow或shadow文件的内容或权限配置有误,则可以被利用来进行系统提权。上一章中,我们已经学习了文件的提权方法, 在本章节中,我们将学习如何利用来完成系统提权。在本节实验中,我们学习了。
|
5天前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
20 2
|
18天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
164 3
|
22天前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
23天前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
54 0
|
24天前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
8天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
84 5