3. 开发板连接网络与SSH登录

3.1. 连接网络与查看开发板IP地址

使用网线通过开发板的任意一个以太网接口与路由器连接起来, 或者配置开发板连接上无线路由器WIFI,即可把开发板连接至网络。

使用ifconfig命令查看开发板的IP地址,见下图。

未找到图片

在上图中开发板使用ifconfig命令可查看到开发板eth1网口的IP地址,为192.168.0.69。 若使用ifconfig命令查看不到IP地址,请检查网络连接,或尝试使用以下命令申请IP:

1
2
#eth1表示第一路以太网口,eth2表示第二路以太网口
sudo udhcpc  -b  -i  eth1

若命令执行正常,会出现图中的输出,并且再次输入ifconfig命令会查看到eth1具有正常的IP地址。

未找到图片

3.1.1. ping测试

若开发板连接的路由器支持连接到公网,直接在终端输入如下命令即可进行连接测试:

1
2
#在开发板的终端执行以下命令
ping www.firebbs.cn
未找到图片

出现类似上图的输出表示网络连接成功,使用“Ctrl + C”可退出命令。

若连接的路由不支持连接到公网,可以直接ping路由的IP地址或者同样连接到该路由电脑的IP地址, 如本例子中的路由IP地址为192.168.0.1。请把以下命令中的IP地址换成自己实验环境的路由IP:

1
ping 192.168.0.1

3.2. 使用MobaXterm SSH登录开发板

SSH终端通过开发板的以太网或WiFi的IP地址都可以连接,也可使用主机名。

  • 开发板的默认主机名为: npi ,使用主机名登录前先再开发板上运行 安装 sudo apt install avahi-daemon 。

  • IP默认由路由动态分配,可先通过串口终端连接,使用 ifconfig命令 查看具体IP。

1、上电启动开发板,开发板默认开启ssh服务。系统正常登录后,输入以下命令查看ssh服务是否已经运行:

1
sudo systemctl status ssh

如下图所示:active状态说明ssh服务正常运行

查看ssh服务是否运行

提示

如果烧录的是新系统镜像(2021.06或以上),第一次使用ssh时,需使用命令sudo fire-config,在shell目录下使能ssh服务,并重启开发板,才能显示上图所示的状态。

2、确保网络连接正常(注意wifi要先正确配置后才能使用)。输入以下命令查看当前主机的ip地址:

1
ifconfig

3、点击菜单栏 「sessions」 –> 「new session」,弹出 「session setting」 对话框,选择SSH:

未找到图片

4、在Remote host中填入开发板连接网络后使用的 IP地址 或者开发板的默认主机名 npi, 在Specify username打钩后,可以先填好登录名 debian ,如果不填则之后手动先输入登录名。 点击下面的OK开始连接。

未找到图片

5、成功连接上后会要求输入登录名密码 temppwd ,当密码输入正确回车后,会弹出一个窗口, 这里直接点关闭不影响。

未找到图片

6、成功登陆后即可输入命令操作。左边会自动出现一个窗口显示开发板目录下的文件, 可以用鼠标把文件拖放进去或者把板子文件拖放出来。

未找到图片

7、文件拖放进开发板后的样子。

未找到图片

3.3. 使用systemd-network设置静态ip

Systemd已成为了大多数发行版的标准配置, 使用了Systemd,就不需要再用init了。 Systemd 取代了initd,成为系统的第一个进程(PID 等于 1),其他进程都是它的子进程。 这里简单介绍如何使用systemd-network来设置静态ip

3.3.1. 步骤一

在板子上执行以下两条命令

1
2
3
 mv /etc/network/interfaces /etc/network/interfaces.save

 systemctl enable systemd-networkd
  • 第一条指令将之前/etc/network/interfaces文件重命名为interfaces.save

  • 第二条指令使能systemd-networkd服务

3.3.2. 步骤二

在/etc/systemd/network目录下增加需要配置的网卡配置信息文件,文件以.network后缀作为结尾。 如新建一个配置网卡eth1文件 eth1.network,文件内容如下:

1
2
3
4
5
6
7
[Match]
Name=eth1

[Network]
Address=192.168.1.20/24
Gateway=192.168.1.1
DNS=192.168.1.1

关于systemd-network更多资料可参考以下链接: https://wiki.archlinux.org/index.php/Systemd-networkd