米尔科技提醒您:您的浏览器版本过低或者使用了兼容模式,为了获得更好的浏览体验,建议使用IE10以上的浏览器或使用极速模式。 请升级浏览器以获得更好的体验!

Systemd实现STM32MP1的多种网络通信管理(上)

文章来源:米尔科技 发布日期:2020.11.27 浏览次数:1358
本次例程为米尔原创实操开发笔记,如需转载请提前联系米尔获取转载授权。
systemd-networkd 是一个管理网络服务程序,可以用来管理以太网,WIFI,网桥, EC20 等模块的网络优先级,以及连接情况。配合 systemd-resolved 服务一起使用。本次主要目的是学习以太网,wifi,EC20 模块同时管理,并按指定优先级收发数据。

2.硬件资源

  • MYD-YA157C-V2 开发板 

  • WIFI 天线 

  • USB 转接板 

  • EC20 模块

  • 网线 

  • 路由器

3. 软件资源

  • Linux kernel 5.4.31 

  • systemd-networkd 

  • systemd-resolved

4.环境准备 

将 MYD-YA157C-V2 烧入镜像,wifi天线连接 WIFI, EC20模块接入USB口,接入网线,路由器配置 wifi 热点,并连接外网。


5.操作步骤

5.1.检查环境 

1) 检查 systemd-networkd 运行状态


2) 检查 systemd-resolved 运行状态

Active: active(running) 正在运行


3) 查看 DNS 配置文件

resolv.conf 是 resolv-conf.systemd 的软连接

/sbin/resolvconf 是/usr/bin/resolvectl 软连接


4) 查看网络管理信息



lo 本地回环 没有在 systemd 上管理

  • eth0 以太网 已经在 systemd 上管理 

  • ppp0 EC20 模块 没有在 systemd 上管理 

  • wlan0 wifi 没有在 systemd 上管理


5.2 检查 xx-xxx.network

Systemd-networkd 的设备写法为 xx-xxxx.network。必须以 network 结尾,前 面遍历会以字典顺序执行。可以将设备配置文件放置这几个目录:/etc/systemd/network/ ,

/run/systemd/network/ , 

/lib/systemd/network/. 

优先级为 /etc/ > /run/ > /lib/ 。


在 5.1 中已 经知道以太网被管理,这里直接从它的配置文件入手。

新建文件 /lib/systemd/network/50-wired.network

Name=eth* 所有eth开头设备适配下面方案 

HDCP=ipv4自动获取IP 

RouteMetric 跃点数15跃点数ip route可以看到如下信息:

Metric 15 路由跃点数 15


注:跃点数能够反映跃点的数量、路径的速度、路径可靠性、路径吞吐量以及管理属性,Metric 的值越小,优先级越高。


鉴于后面内容篇幅过长,本次实操开发笔记分3次对外进行发布:开发笔记|Systemd实现STM32MP1的多种网络通信管理(上)开发笔记|Systemd实现STM32MP1的多种网络通信管理(中)开发笔记|Systemd实现STM32MP1的多种网络通信管理(下)
如果迫不及待想要获取资料的小伙伴,可以加小编微信获取(微信ID:shammercss)


本文来自米尔科技,原文地址: http://www.myir-tech.com/resource/551.asp,转载请注明出处。