3. 网络连接及静态配置

LubanCat-RK356x系列板卡都搭配了以太网口或WIFI模块,还可以连接4G模块、PCIE转以太网模块、 USB转以太网模块等,这样我们的网络需求就不止是提供板卡来上网这么简单了,不同的搭配组合,可以衍生出无数种变化。

3.1. ping命令

ping(Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。 它是用来检查网络是否通畅或者网络连接速度的命令

ping的原理: 向指定的网络地址发送一定长度的数据包,按照约定,若指定网络地址存在的话, 会返回同样大小的数据包,当然,若在特定时间内没有返回,就是“超时”,会被认为指定的网络地址不存在

3.1.1. 局域通信

一个局域网中是必备网关(gateway)的, 我们可以通过ping网关来看自己的ip能不能成功使用, 如果连网关都ping不通就证明这个局域网是没有连接起来。

1
2
 #ping命令
 sudo ping + ip地址
  • 成功联网就可以看到有一连串的数据,如图下

../../_images/ping-ok-gateway.png
  • 如果没有成功联网就会报错,如图下

../../_images/ping-false-gateway.png

3.1.2. 连接互联网

我们可以通过ping网站来查看自己的板卡是否连接互联网

1
2
 #ping命令
 sudo ping xxx.com
  • 以www.baidu.com为例

  • 成功联网就可以看到有一连串的数据,如图下

../../_images/ping-ok.png
  • 如果没有成功联网就会如图下

../../_images/ping-false.png

3.2. 网络连接

连接互联网或者组成局域网都需要满足一个前提–设备需要获取到ip, ip可以理解为设备的名字,局域网内的设备在局域网内可以通过ip进行沟通。

1
2
3
 #查看ip

 ifconfig
interface2-2W

3.2.1. 网口连接

LubanCat-RK356x系列板卡除了 LubanCat-Zero-W 不具备网口外, 其他的板子都会有1-4个网口,网口的样子如下

../../_images/rj45-1.png

连接网络需要将网线插入网口内,我们的板卡都支持10/100/1000M自适应, 读者可以根据自己网络选择相应的网线连接

1
2
3
4
 5类线    ----- 100M
 超5类线  ----- 1000M(推荐使用)
 6类线    ----- 1000M(推荐使用)
 超6类线  ----- 1000M(推荐使用)

如果使用适合千兆的网线的话,连接成功后,网口的灯会亮

../../_images/rj45-2.png

3.2.2. 无线连接

本章配套视频介绍:

../../_images/video.png

《15-无线网卡连接WiFi和蓝牙》

https://www.bilibili.com/video/BV1Y24y1A7xH/

可以前往 《模块支持列表》章节 查看

  • 支持usb网卡

  • 支持pcie网卡

3.2.2.1. 命令行图形化连接

  • 进入图形配置

1
sudo nmtui
  • 移动键盘方向键移动到 Active a connectionEnter键 进入wifi设置

../../_images/nmtui-1.png
  • 然后移动方向键到你要连接的wifi,按 Enter键

  • 如果是连接未连接的有密码的热点则进入输入密码界面

  • 如果是没有密码或者已连接的热点则连接热点或者取消连接热点

../../_images/nmtui-wifi-1.png

注解

使用有些网卡(如rtl8821cu),系统会生成两个网络接入点p2p0和wlan0, wifi使用哪个节点连接都可以,使用p2p0会方便设置, 使用wlan0会比较符合广大网友们的习惯

第一次连接有密码的热点时,如图下

../../_images/nmtui-wifi-2.png
  • 输入密码后,就可以看到wifi已连接

../../_images/nmtui-wifi-3.png

如果想要断开wifi,在已连接的状态按下 Enter键 就可以断开连接

3.2.2.2. 命令行连接

  • 列出wifi列表

1
 nmcli dev wifi list
../../_images/nmcli-wifi-list.png

按方向键查看wifi列表,按 q 退出

  • 连接wifi

以热点: PPP 密码:00000000 使用接口wlan0为例

1
2
3
4
5
 #第一次连接
 sudo nmcli dev wifi connect PPP password '00000000' ifname wlan0

 #第一次连接成功后,再连接或切换wifi后
 sudo nmcli dev wifi connect PPP

具体操作可以前往 《nmcli》 查看

3.2.2.3. 桌面端连接

由于Ubuntu和debian系统的网络设置方法几乎一模一样,这里仅演示debain系统的wifi配置

  • 第一步:点击右上角的网络管理

  • 第二步:选择要连接的wifi

未找到图片
  • 第三步:输入wifi密码

  • 第四步:点击连接

未找到图片
  • 下图为连接成功

未找到图片

3.2.3. USB共享网络

本章配套视频介绍:

../../_images/video.png

《14-通过USB连接网络》

https://www.bilibili.com/video/BV1vh4y1x7av/

3.2.3.1. 手机USB共享网络

使用USB共享网络步骤

注意

使用该功能前需要注意查询自己的手机型号支不支持USB网络共享

操作步骤:

  1. 手机需要连接互联网

  2. 手机与板卡使用USB连接起来

  3. 手机开启USB共享的功能

完成上面步骤后板卡即可共享手机上的网络

手机开启USB共享的功能可以去百度查询,因为不同的手机, 不同系统版本的设置方式不一样,这里就不做详细。

这里以Redmi K20 Pro为例,小米系统操作方法应该类似

  1. 使用TYPE-C线(能传输数据)连接板卡和手机

  2. 手机开启USB共享的功能,如下图

../../_images/usb-phone.png

其他手机的共享网络的方法(没有实测过,理论上是可以的,如不成功可以自行百度)

《苹果手机》

《华为手机》

《oppo手机》

《vivo手机》

3.2.3.2. 电脑USB共享网络-Windows

注意

该功能的开启需要使用板卡的OTG接口以及电脑能提供足够的电流维持板卡(LubanCat2 N除外)的正常工作, 可以尝试直接用电脑USB给板卡供电,如果出现重启,可以减少一部分外设再试,如果没出现重启即可使用该功能。

错误

有些电脑可能没有RNDIS驱动,无法识别USB虚拟网络设备,特别是Win11系统,又或者有些电脑默认是某个RNDIS驱动,不稳定经常断线,所以建议用户更换微软自带的RNDIS驱动。

3.2.3.2.1. 更换微软RNDIS驱动

如果没有RNDIS驱动,则可能显示如下图,RNDIS设备带感叹号。

../../_images/RNDIS_1.jpg

如果有RNDIS驱动,但不是微软自带的驱动,而是其他驱动,则可能是带有RNDIS相关字眼的设备,如下图。

../../_images/RNDIS_2.jpg

右击选中上述RNDIS设备,再选择“更新驱动程序”,然后选择“浏览我的电脑以查找驱动程序”,如下图。

../../_images/RNDIS_3.jpg

再选择“让我从计算机上的可用驱动程序列表中选取”,如下图。

../../_images/RNDIS_4.jpg

再在常见硬件类型列表中,往下拉,选择“网络适配器”,如下图。

../../_images/RNDIS_5.jpg

如果有“显示兼容设备”的选项,需要打勾,没有则直接厂商选择“Microsoft”,型号选择“远程NDIS兼容设备”即可。

../../_images/RNDIS_6.jpg

如果弹出警告提示windows无法验证这个驱动程序是否与硬件兼容,如下图,在确保一开始选择对RNDIS的设备以及后续步骤正确的情况下,选择“是”即可。

../../_images/RNDIS_7.jpg

完成以上步骤后可以看到RNDIS设备显示为远程NDIS兼容设备,如下图。

../../_images/RNDIS_8.jpg

在网络连接管理页面,可以看到RNDIS网卡,如下图。

../../_images/RNDIS_9.jpg
3.2.3.2.2. USB共享网络

操作方法:

  1. 使用能传输数据的线连接电脑的USB口及板卡的OTG口(一般为供电口)

  2. 电脑开启网络共享,具体方法如下

  • 打开网络设置

../../_images/usb-pc-11.png
  • 查看当前网络状态

../../_images/usb-pc-21.png
  • 查看当前所有的网络连接

../../_images/usb-pc-31.png
  • 配置网络共享

../../_images/usb-pc-41.png
  • 查看是否自动获取ip

1
2
3
#等待几秒
#查看是否获取ip
ifconfig
../../_images/usb-pc-ip.png
  • 如果在电脑开启了网络共享,如果20秒后usb0没有自动获取ip,需要手动获取ip

1
2
#手动配置自动获取ip
dhclient usb0
  • 成功获取ip后,可以使用该命令,查看是否成功连接上网络

1
ping baidu.com

成功如下图

../../_images/usb-pc-5.png

3.2.3.3. 电脑USB共享网络-Linux

注意

该功能的开启需要使用板卡的OTG接口以及电脑能提供足够的电流维持板卡(LubanCat2 N除外)的正常工作, 可以尝试直接用电脑USB给板卡供电,如果出现重启,可以减少一部分外设再试,如果没出现重启即可使用该功能。

注解

下面使用Ubuntu20.04进行演示,其他Linux发行版操作过程也类似

操作方法:

  1. 使用能传输数据的线连接电脑的USB口及板卡的OTG口(一般为供电口)

  2. 电脑开启网络共享,具体方法如下

  • 将LubanCat板卡通过OTG接口正确连接电脑

当连接完成后,在终端使用lsusb命令可以看到一个 Linux-USB Ethernet/RNDIS Gadget 设备, 使用ifconfig命令可以看到usb0网卡

../../_images/linuxshare01.png
  • 打开网络设置并新建接口

在终端中使用nm-connection-editor命令,打开网络管理器,新建一个以太网(Ethernet)连接

../../_images/linuxshare02.png
  • 配置网络共享

修改以太网选项卡配置,设置设备为usb0,也就是连接到LubanCat的网络设备

../../_images/linuxshare03.png

修改IPv4设置选项卡,将方法设置为与其他计算机共享,然后保存设置

../../_images/linuxshare04.png
  • 查看是否自动获取ip

在LubanCat板卡的终端运行以下命令

1
2
3
#等待几秒
#查看是否获取ip
ifconfig

如图中所示,LubanCat获取到的ip是10.42.0.12

../../_images/linuxshare05.png
  • 如果在电脑开启了网络共享20秒后usb0仍然没有自动获取ip,则需要重新插拔USB或者手动获取ip

1
2
#手动获取ip
dhclient usb0
  • 成功获取ip后,可以使用该命令,查看是否成功连接上网络

1
ping baidu.com

成功如下图

../../_images/linuxshare06.png

3.3. 静态网络配置

本章配套视频介绍:

../../_images/video.png

《16-设置网络静态IP》

https://www.bilibili.com/video/BV16h4y1x7k8/

这里分享一篇与网络相关的文章,文章介绍了生活中我们的互联网构成的基础结构, 还可以让我们了解一下下文的 addresses gateway4 nameservers 等, 可以帮助设置静态IP

《如果让你来设计网络》

ps:文章有点长,阅读并理解可能需要十多分钟

注解

如果静态ip的设置不正确,就会导致网络无法正常连接网络

注意

如果是入门的小白,建议把动态获取到的ip设置成静态

3.3.1. 静态ip无法连接网络问题排查

这一小节是解决你在设置静态ip时,无法连接网络的问题排查, 如果问题排查都无法解决问题,建议百度命令行输出的内容。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
静态ip无法连接网络问题排查

1.无法连接网络 ----> 查看动态ip连接是否能正确联网
可以---->往下面排查,不可以---->网络链路有问题

2.检查自己的网关有没有设置正确 -----> 查看动态连接时自动设置的网关
一样---->往下面排查 , 不一样 -----> 重新设置一下网关

3.查看设置的静态ip地址已经被其他设备占用 ----> ping 网关
可以---->往下面排查,不可以---->更改静态ip 或者设置动态分配ip

4.设置DNS servers ---->设置为114.114.114.114 或者 8.8.8.8
可以---->结束 , 不可以----->根据debug信息前往geogle搜查

3.3.2. nmtui

  • 设置静态地址前的ip地址

未找到图片

如果想要成功的设置静态地址需要留意你想要设置的ip地址是否被其他设备占用, 可以用ping 设置的静态地址,如果有数据返回证明ip是被其他设备占用的

注意

这里建议不懂网络配置的萌新可以把静态地址设为动态连接时获得的ip地址

以下为详细步骤

  • 进入图形配置

1
nmtui
  • 移动键盘方向键移动到 Edit a connectionEnter键 进入wifi设置

../../_images/nmtui-1.png
  • 选择你要编辑的网络,这里以eth0为例

../../_images/nmtui-2.png
  • 进入可以看到网络的默认配置

../../_images/nmtui-3.png
  • 以下操作为配置静态ip

  • 需要将 IPV4 CONFIGURATION 设置为Manual

未找到图片
  • 然后移动光标到 show 按enter进入详细配置

未找到图片
  • 移动光标到address <Add...> 进行添加ip地址

  • 这里以ip地址192.168.103.172 , 网关 192.168.103.254 为例

注意

ip地址和网关需要根据自己的实际网络情况进行配置, 如果照抄这里的配置,很大机率会让你的板卡连不上网, 萌新建议将静态ip修改为动态获取的ip

  • 网关的获得方式

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#1.将网络设置为自动获取ip

#2.成功获取ip后,使用命令
route

#结果
root@lubancat:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 eth0
default         FusionWrt.lan   0.0.0.0         UG    600    0        0 wlan0

#3.Gateway就是我们的网关,使用下列命令
route -n

#结果
root@lubancat:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.103.254 0.0.0.0         UG    100    0        0 eth0
0.0.0.0         192.168.25.1    0.0.0.0         UG    600    0        0 wlan0

#可以看到我们的网关地址 ---- 192.168.103.254
未找到图片
  • 192.168.103.172/24 其中/24表示为掩码255.255.255.0,

  • DNS servers 全国通用DNS–>114.114.114.114 全球通用DNS–>8.8.8.8

  • search domain 可沿用DNS servers设置,

  • DNS serverssearch domain 可以设置多个。

  • 设置完后,就可以移动到后面点击ok完成设置

未找到图片
  • 完成设置后需要激活设置才能让网络生效

未找到图片
  • 点击 Activate a connection 进入连接

  • 下图状态为网络激活中

未找到图片
  • 按一次enter取消连接,再按一次enter键重新连接

  • 重新连接后的IP就变成了我们设置的ip了

未找到图片

我们还可以使用 ping baidu.com 来查看是否成功连接外部网络

未找到图片

除了配置静态网络,nmtui还能配置网络的优先级,具体方法如下:

  1. 将需要编辑的网络设置成手动配置IP。参考上文静态网络的配置方法。

  2. 选中 Routing 的Edit选项。Routing 默认情况下是 No custom routes

未找到图片
  1. 进去后选中 add 按下回车,然后输入需要提高优先级网络的目的地址、网关和Metric度量值。其中Metric值越小越优先。编辑完后选中OK保存。

未找到图片
  1. 最后输入route -n 查看设置是否保存。

未找到图片

3.3.3. nmcli

以eth0为例,这一步操作和在nmtui的编辑网络一样,只不过从图形界面变成命令行的操作, 命令行里还有各种各样的命名,这里只介绍部分,有兴趣的可以自行探索

1
2
3
4
5
6
7
#先列出连接的配置,eth0现在连接的是Wired connection 1

root@lubancat:~# nmcli c s
NAME                UUID                                  TYPE      DEVICE
Wired connection 1  35ecb023-3194-3edb-bf90-4198f82329a8  ethernet  eth0
Wired connection 2  45f86cca-f8df-376e-8aad-37e10d2a65ce  ethernet  --
aEBF_Guest          fb1d506e-6dc7-4c5b-a4ce-339f3349d26d  wifi      --

然后对Wired connection 1进行修改

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
#静态ip设置
sudo nmcli c modify 'Wired connection 1' [ + | - ]选项 选项值  # 或

sudo nmcli c m 'Wired connection 1' ipv4.address 192.168.103.172/24     # 修改 IP 地址和子网掩码
sudo nmcli c m 'Wired connection 1' ipv4.method manual                  # 修改为静态配置,默认是 auto
sudo nmcli c m 'Wired connection 1' ipv4.gateway 192.168.103.254        # 修改默认网关
sudo nmcli c m 'Wired connection 1' ipv4.dns 8.8.8.8                        # 修改 DNS
sudo nmcli c m 'Wired connection 1' +ipv4.dns 114.114.114.114           # 添加一个 DNS
sudo nmcli c m 'Wired connection 1' ipv6.method disabled                            # 将 IPv6 禁用
sudo nmcli c m 'Wired connection 1' connection.autoconnect yes              # 开机启动

注意,必须先修改 ipv4.address,然后才能修改 ipv4.method!
用空引号""代替选项的值,可将选项设回默认值(以 ipv4.method 为例):
未找到图片

可以进入nmtui查看配置,可以看到配置已经被修改了,此时配置还没激活

未找到图片
1
2
#激活配置
sudo nmcli c up ifname eth0

配置完后,ip就改变了

未找到图片

3.3.4. netplan(Ubuntu专用)

文件位置 : /etc/netplan/

这个工具仅限于Ubuntu系统使用,debian系统使用该工具对无线网络的支持十分糟糕, 因此,不推荐在debian里使用

3.3.4.1. 自动获取ip

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
network:
    version: 2
    renderer: NetworkManager
    ethernets:
        eth0:
            dhcp4: true
        eth1:
            dhcp4: true
    wifis:
        wlan0:
            dhcp4: true
            access-points:
                $wifi_name:
                    password:"$wifi_password"
  • $wifi_name填要连接的wifi名字

  • $wifi_password填wifi密码

注意

“:”后面要加空格键,不然会报错

3.3.4.2. 使用静态IP

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
network:
    version: 2
    renderer: NetworkManager #指定网络管理工具
    ethernets:
        eth0:
          dhcp4: no
          addresses: [192.168.103.172/24]
          gateway4: 192.168.103.254
          nameservers:
            addresses: [8.8.4.4,8.8.8.8]
    wifis:
        wlan0:
            dhcp4: no
            addresses: [192.168.25.190/24]
            gateway4: 192.168.25.1
            nameservers:
                addresses: [8.8.8.8,114.114.114.114]
            access-points:
                DoorNet-A:
                    password: "********-a"
  • dhcp4: no 关闭自动ip获取

  • addresses: 设置ip地址,最好选择你自动获取ip获取到的值, 如果随便设置的话,可能会导致无法正确连接到网络中去

  • gateway4: 网关设置

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
#1.使用自动获取ip
#2.成功获取ip后,使用命令
route

#结果
root@lubancat:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 eth1
default         FusionWrt.lan   0.0.0.0         UG    600    0        0 wlan0

#3.Gateway就是我们的网关,使用下列命令
route -n

#结果
root@lubancat:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.103.254 0.0.0.0         UG    100    0        0 eth1
0.0.0.0         192.168.25.1    0.0.0.0         UG    600    0        0 wlan0
#可以看到我们的网关地址了
  • nameservers: dns-域名系统,可以将输入的网址转化为ip地址访问

    1
    2
    3
    4
    5
    全球通用DNS地址(此DNS地址为Google公司提供的免费DNS服务器地址)
        主dns服务器:8.8.8.8,备用dns服务器:8.8.4.4
    ###################################################################
    全国通用DNS地址(国内用户推荐使用,国内移动、电信和联通通用的DNS)
        主dns服务器114.114.114.114,备用dns服务器:114.114.115.115
    

3.3.4.3. 应用配置

修改完成后使用以下命令应用配置

1
2
3
4
5
6
7
8
#如果配置文件有有问题,会恢复到原始配置,没问题则应用
sudo netplan try

#设置配置文件,如果文件格式不规范可以打印debug信息
sudo netplan apply

#打印网络配置
sudo netplan get

3.3.5. 桌面端

Ubuntu

  • 点击网络图标,进入网络设置

未找到图片
  • 选择你需要修改的网络,点击修改连接的按钮

未找到图片
  • 进入配置页面,点击 ipv4 settings

未找到图片
  • 根据步骤,以及自己网络的实际情况设置自己的ip

  • DNS serverssearch domain 可以根据下图配置

未找到图片
  • 保存完成后,可以重启或者重新连接更新自己的配置

debian

  • 点击左下角的软件目录,选择 Prefrences 然后选择 Advanced Network Configuration 进入配置

未找到图片
  • 选择你需要修改的网络,点击配置连接的按钮

未找到图片
  • 进入配置页面,点击 ipv4 settings

未找到图片
  • 根据步骤,以及自己网络的实际情况设置自己的ip

  • DNS serverssearch domain 可以根据下图配置

未找到图片
  • 保存完成后,可以重启或者重新连接更新自己的配置

未找到图片
  • 更新完配置后查看网络是否正常

未找到图片

3.3.6. network(debian专用)

由于使用该工具配置网络后,效果比较差,因此,在LubanCat-RK356x系列板卡的debian 10系统里, 我们不建议使用该工具。(因为,使用该方法配置的静态ip不能进行热插拔,拔出网咯接口后会占用网络接口)

在debian 10系统中如果 /etc/network/interfaces中包含了网络接口,那么就无法用nmtui,nmcli以及桌面配置网络

因此这里不推荐新手使用

3.3.6.1. 用法

该工具主要编辑 /etc/network/interfaces 以及 /etc/network/interfaces.d 内的文件来配置网络

由于该工具相对于NetworkManager而言不是很好用,因此这里把官方的文档放出来,让大家学习使用

https://wiki.debian.org/zh_CN/NetworkConfiguration