« | August 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | | | | | |
| 公告 |
戒除浮躁,读好书,交益友 |
Blog信息 |
blog名称:邢红瑞的blog 日志总数:523 评论数量:1142 留言数量:0 访问次数:9690905 建立时间:2004年12月20日 |

| |
[开发工具]vmware 不是真实的主机 原创空间, 文章收藏
邢红瑞 发表于 2009/1/8 16:41:50 |
写程序没有不出问题的,软件出了问题,老孟不止一次的告诉我,先看是不是环境的问题,然后再检查程序,我一般是反过来做。2003年,非典期间,我所在的公司拖欠了6个月的工资,没有办法只好到一个台湾的企业里做路由器。因为台商的吝啬,没有购买arm芯片相应的调试设备,手头有没有多余的机子,修改程序每次编译linux内核都需要很长的时间。索性就在windows虚拟机下开发,开发到pppoe拨号程序时,发现始终无法拨号成功,但是宿主机的xp ,很可以拨号成功,排除是猫的问题,那就是程序的问题,后来边看pppoe规范 边看代码,没有发现 任何问题。极度郁闷之下,只好把程序烧到了路由器上,结果小猫发出了滴滴的握手声音,恍然大悟,adsl无法为我的Linux分配动态ip。
现在在一台电脑里测试UDP,宿主系统是Windows XP,VMWare里装的是Linux(Fedora,Linux防火墙已经禁用。现在的问题是,Linux里的测试程序总是收不到Windows发来的UDP包,表现为调用recvfrom()时被阻塞,无法返回。我用tcpdump工具可以查看到Windows的确已经发送了UDP包至Linux,linux能用 TCPDump 收到包,证明了包已经到达了 Linux但是没有回应。又做了以下三个测试:1 在Linux里发UDP包到Windows,结果Windows可以收到UDP包。2 在Linux里发UDP包到Linux自身,结果也能收到UDP包。3 在Windows里发UDP包到Windows自身,结果同样可以收到UDP包。
看来 vmware和真实环境 有差别的。 |
|
|