1. 网关基础配置与网络连通性测试
任务说明
本案例面向工业IoT网关的初始部署场景:网关通过以太网接入局域网,需要为其配置静态IP地址、子网掩码和默认网关,并验证与上位机之间的网络连通性。完成本案例后,网关应能以指定IP地址被上位机访问,且能够ping通局域网内的其他设备。
环境与依赖
- 硬件:任意ARM/x86架构的Linux网关设备(如树莓派、RK3568开发板),带以太网接口
- 系统:Debian/Ubuntu或Buildroot/Yocto生成的嵌入式Linux
- 工具:
ip(iproute2)、ping、nano或vi编辑器 - 上位机:Windows/Linux PC,与网关接入同一局域网
实现步骤
网关的IP配置有两种落地方式:临时配置(重启失效,用于快速验证)和持久化配置(写入系统文件,重启保留)。本案例两种方式均需完成,先临时配置验证连通性,再写入配置文件固化。
1. 查看当前网络接口状态
执行以下命令确认以太网接口名称(通常为eth0或end0):
ip link show
ip addr show
2. 临时配置IP地址
假设网关的以太网接口为eth0,规划静态IP为192.168.1.100,子网掩码为255.255.255.0(即/24),默认网关为192.168.1.1。执行:
sudo ip addr add 192.168.1.100/24 dev eth0
sudo ip link set eth0 up
sudo ip route add default via 192.168.1.1 dev eth0
若网关已有DHCP分配的IP,需先删除旧地址再添加静态地址:
sudo ip addr flush dev eth0
sudo ip addr add 192.168.1.100/24 dev eth0
3. 持久化配置(重启生效)
对于Debian/Ubuntu系统,编辑网络配置文件:
sudo nano /etc/network/interfaces
写入以下内容:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
对于使用netplan的Ubuntu 18.04+系统,编辑/etc/netplan/01-netcfg.yaml:
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1]
应用配置:sudo netplan apply
4. 验证连通性
在网关上执行以下命令,确认配置生效:
ip addr show eth0
ip route show
预期输出:eth0的inet地址为192.168.1.100/24,路由表中存在default via 192.168.1.1。
然后测试与上位机的连通性。假设上位机IP为192.168.1.50,在网关执行:
ping -c 4 192.168.1.50
在上位机打开命令行,反向ping网关:
ping 192.168.1.100
验证方法与判定标准
- 配置正确性:
ip addr show eth0显示的IP、掩码与规划一致;ip route show包含默认路由且网关地址正确。 - 双向连通性:网关ping上位机返回
0% packet loss;上位机ping网关同样无丢包,即判定网络连通性测试通过。 - 持久化验证:执行
sudo reboot重启网关后,再次执行ip addr show eth0,IP仍为静态配置值,说明持久化配置生效。
常见问题
- ping不通但IP已配置:检查上位机与网关是否在同一子网(如均为192.168.1.x);检查网线连接和交换机端口状态;确认上位机防火墙未屏蔽ICMP。
- 重启后IP丢失:说明未正确写入持久化配置文件,或文件格式有误。执行
sudo netplan apply或sudo systemctl restart networking检查报错信息。 - 接口名不是eth0:使用
ip link show确认实际接口名,后续所有命令中的接口名需同步替换。