用MulitcastSocket写了个多播程序, 在局域网中运行没什么问题(一切都正常).可在INTERNET上出错,  应该怎么改??(组播IP已设用于Intnet的D类IP),    路由器也设定为多点广播通过。 可还是不行!?  WHY?!(望能解释并给出主要代码).万分感谢!!

解决方案 »

  1.   

    楼主是怎么测试的?INTERNET上路由器很多呀。:)
      

  2.   

    部分代码:
       发送:  ..........
             ip = InetAddress.getByName(groupip);   //groutip为: "224.0.1.100"
    msocket = new MulticastSocket();
             DatagramPacket send88 = new DatagramPacket(sendmessage88,sendmessage88.length,ip, 2189);
             msocket.send(send88);
       接收: ...........
      

  3.   

    接受:  .........
           msocket.joinGroup(ip);
    byte receive[] = new byte[256];
    while(true) {

    try{

    DatagramPacket receive1 = new DatagramPacket(receive,receive.length);msocket.receive(receive1);
      

  4.   

    楼上的朋友:  我这问题是不是路由器不能解析那类IP???(代码有什么问题么??)
                 如果更换了路由器能不能解决?? 朋友建议几类这样的路由器(你使用过比较好,质量可靠的), OK!  谢谢了!!??