1. imx6ull开发板静态IP配置全流程第一次接触imx6ull开发板时最让人头疼的就是每次重启后IP地址都会变化。想象一下你刚调试好的远程连接重启设备后就找不到了这种体验实在太糟糕了。今天我就来分享一个彻底解决这个问题的方案让你的开发板IP地址像石头一样稳固。首先需要准备的材料很简单一根网线、一台Windows电脑、imx6ull开发板以及串口调试工具推荐使用MobaXterm它集成了串口和SSH功能。我用的是最普通的超五类网线实测完全够用没必要追求高端网线。关键步骤分为三个部分修改网络配置文件、使配置生效、设置开机自启动。很多人只做了前两步结果发现重启后IP又变了这就是为什么我要特别强调第三步的重要性。先通过串口连接到开发板输入命令vi /etc/network/interfaces这个文件里通常会有dhcp的配置我们需要把它改成静态IP。找到类似下面的内容#auto eth0 #iface eth0 inet dhcp把这两行注释掉在行首加#然后添加auto eth0 iface eth0 inet static address 192.168.137.100 netmask 255.255.255.0 gateway 192.168.137.1这里address就是你要设置的静态IP建议用192.168.137.x这个网段因为这个网段在Windows上兼容性最好。保存退出后输入sudo /etc/init.d/networking restart这时候用ifconfig命令查看应该能看到eth0的IP已经变成你设置的值了。2. 永久保存静态IP配置上面配置的IP在重启后会丢失这是因为没有把网络服务加入启动项。我遇到过好几次这种情况白天调得好好的第二天来实验室发现又连不上了特别耽误工作进度。要让配置永久生效需要修改启动脚本。有两种方法我都用过推荐第一种echo /etc/init.d/networking start /etc/init.d/rc或者用vi手动编辑/etc/init.d/rc文件在最后加上这一行。这个文件是系统启动时自动执行的相当于Windows的启动项。有个细节要注意如果你用的是较新的系统可能要用systemctl命令systemctl enable networking这个命令会在系统启动时自动启用网络服务。我建议两个方法都做双保险更可靠。测试时有个小技巧不要急着重启先用sync命令确保所有修改都写入磁盘然后再重启。这样可以避免文件系统缓存导致配置没保存的情况。3. Windows电脑端网络配置开发板配置好了接下来是电脑端的设置。这里最容易出问题的是IP地址冲突和防火墙设置我在这上面栽过不少跟头。打开控制面板→网络和Internet→网络连接找到你的有线网卡通常叫以太网右键属性→Internet协议版本4(TCP/IPv4)选择使用下面的IP地址IP地址192.168.137.1最后一个数字不要用100子网掩码255.255.255.0默认网关留空重要提示一定要确保电脑和开发板在同一个网段但IP地址不能相同。比如开发板是192.168.137.100电脑就用192.168.137.1。配置好后打开cmd窗口ping一下开发板ping 192.168.137.100如果显示请求超时别急着放弃。先试试从开发板ping电脑ping 192.168.137.1如果开发板能ping通电脑但电脑ping不通开发板八成是Windows防火墙的问题。4. 解决Windows防火墙拦截问题Windows防火墙是个很烦人的东西特别是对于开发人员。我建议不要直接关闭防火墙虽然很多教程都这么说那样太不安全了。更好的做法是精确配置入站规则。打开控制面板→系统和安全→Windows Defender防火墙→高级设置在入站规则中找到文件和打印机共享(回显请求 - ICMPv4-In)。右键属性在作用域选项卡中把远程IP地址改为下列IP地址然后添加开发板的IP如192.168.137.100。更简单的方法是创建一个新规则选择自定义规则协议类型选ICMPv4作用域中指定远程IP为开发板IP允许连接给规则起个名字比如允许开发板ping这样设置后不仅ping能通后续的SSH连接也会更稳定。我实测发现即使不配置ICMP规则SSH也能连但网络稳定性会差很多。5. 使用MobaXterm实现SSH远程登录MobaXterm是我用过最顺手的终端工具它集成了SSH、串口、SFTP等多种功能特别适合嵌入式开发。安装过程很简单官网下载免费版就够用了。打开MobaXterm点击左上角的Session按钮选择SSH在Remote host里输入开发板的IP192.168.137.100端口保持22不变。第一次连接时会提示保存密钥点Yes就行。常见问题排查如果连不上先检查网线是否插好我遇到过网线松动的坑确保开发板ssh服务已启动ps | grep sshd检查IP配置是否正确特别是子网掩码尝试关闭Windows防火墙测试是否是防火墙问题连接成功后你会发现MobaXterm左侧会自动挂载开发板的文件系统可以直接拖拽文件进行传输比scp命令方便多了。这个功能在调试时特别有用比如快速修改配置文件或者上传测试程序。6. 高级技巧与注意事项经过多次项目实践我总结出几个提升稳定性的技巧网卡供电问题有些电脑的网口供电不足会导致连接不稳定可以尝试换USB网卡IP冲突检测在电脑上运行arp -a命令检查是否有IP冲突备用连接方案建议同时配置好WiFi连接当有线网络出问题时可以快速切换日志查看开发板上用dmesg | grep eth0查看网卡驱动加载情况有个特别容易忽略的点开发板的网络接口名称可能是eth0、enp1s0之类的不同系统可能不一样。用ifconfig -a查看所有接口确保你修改的是正确的接口配置文件。如果遇到特别顽固的网络问题可以尝试终极解决方案ip addr flush dev eth0 systemctl restart networking这条命令会清空网卡的所有配置并重新加载相当于网络设置的重启大法。