笔记--记录一次在libmodbus通讯过程socket的connect()遇到的Operation now in progress 的bug
发布日期:2021-06-30 13:42:13
浏览次数:2
分类:技术文章
本文共 612 字,大约阅读时间需要 2 分钟。
先说结论: 因为我进行通讯的两台设备的mac 地址相同! 所以如果遇到这个问题的话 可以先去排查设备的mac 是否相同!!
最近公司的一个项目用到了两台嵌入式linux设备之间通过modbus进行通讯,再实际测试中出现了以下的情况:两台设备虽然设置了不同的ip 但是通过SSH 进行远程登陆的过程中 还是很卡顿(排除网络问题了,内网且路由器下只有3个设备,电脑+两个嵌入式设备)
经过几天的排查以及前辈的点拨最终发现是因为公司的所有产品的mac 地址相同导致,然后在同一内网下两台一样mac 地址的设备 就会出问题。 具体的问题可能是数据链路层会有问题,所以表现的效果就是 两台机器ssh 都很卡,然后两个机器虽然能ping 通,但是创建socket 连接的时候就会出现connection faild : Operation now in progress 的错误提示。
解决问题的方法也是很简单的,在设备的启动脚本里面将对应的网卡设置成不同的mac 地址就可以了。两台设备的mac 不一样就好了。
ifconfig eth0 downifconfig eth0 hw ether 00:11:22:33:44:55ifconfig eth0 upservice network restart
注意:我上面写的mac 地址不一定有效!!! 最正规的做法应该是需要花钱去买mac 地址,然后再产品的出厂的时候固化到产品中。
转载地址:https://jeason.blog.csdn.net/article/details/109560870 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月24日 04时57分36秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
如何在MAC机器中实现移动设备WiFI上网(没有专门的无线路由器的情况)
2019-05-01
一款非常实用的在线代码分享站点
2019-05-01
教你一分钟制作自己的电子书(视频)
2019-05-01
用ipad维护Linux服务器
2019-05-01
如何用手机维护Mysql数据库
2019-05-01
企业内网信息安全实践-记ChinaUnix技术交流
2019-05-01
完成《Java编程入门》初稿
2019-05-01
Windows Server 2012下安装Hyper-V虚拟机
2019-05-01
MacOSX和Windows 8的完美融合
2019-05-01
Iphone5S 体验(视频+截图)
2019-05-01
python 多进程之进程池的操作
2019-05-01
flask整理之 flask程序中的debug模式
2019-05-01
如何和大妈解释区块链,让他们理解区块链
2019-05-01
比特币,山寨币,到底谁占有主导地位
2019-05-01
比特币,父母这一辈能接受吗?
2019-05-01
解释区块链钱包的意思
2019-05-01
让老百姓知道什么是比特币,只需要10分钟
2019-05-01
为什么要反对比特币,这不代表是空气币
2019-05-01