[VxWorks] 求助,各位大侠,关于VxWorks路由的问题

ATT001   2008-12-12 21:04 楼主
各位大侠,我是一名学生,最近在做一个VxWorks系统下的项目,其中用到了双冗余网卡切换技术,是这样的,最开始我用的是双网卡的网口0,程序正常,可以接收到组播数据,但是如果网口0出错,切换到网口1时,就接收不到组播数据了,只能收到单播数据了。我怀疑是路由的问题,我的网口切换语句是这样的:
  hostDelete("target","193.01.108.03");
  ifRouteDelete("eeE",0);
  ipDetach(0,"eeE");
  ipAttach(1,"eeE");
  ifMaskSet("eeE1",0xffffff00);
  ifAddrSet("eeE1","193.01.108.03");
  程序最开始我是用如下语句加入的组:
  ipMreq.imr_multiaddr.s_addr = inet_addr(“224.100.200.107”);
  ipMreq.imr_interface.s_addr = inet_addr(“193.01.108.03”);
   if(setsockopt(sFd, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&ipMreq, sizeof(ipMreq)) < 0)
   {
                perror(" setsocket IP_ADD_MEMBERSHIP error:\n ");
                return ERROR;
    }
  是不是还应该加一些添加路由之类的语句,希望各位大侠给一些建议,多谢了。

回复评论 (1)

各位大侠,帮帮忙啊
点赞  2008-12-13 20:27
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复