Problema com entrega e recebimento de mensagens em um chat multicast

Galera, estou tentando implementar um chat multicast, mas nao consegui receber nem enviar mensagens! Conecto os computadores pela rede, passo os IP’s, mas a mensagem não chega/envia. Alguem pode me ajudar nessa? Nao sei o que está acontecendo, já testei um chat simples e funcionou. Seguem os códigos:

Método run que lê mensagem e chama o método para o envio:

[code]public void run() {

    Scanner sc = new Scanner(System.in);
    String msg;

    do {
        try {

            System.out.print("<Mensagem> ");
            msg = sc.nextLine();

            if (msg.length() > 512) {
                System.out.println("Mensagem muito grande! Escreva novamente.");
            } else {

                String sendData = "MCDREQPDU" + " " + dataTransfer.pduNumber + " " + msg.length() + " " + msg;
                dataTransfer.MCDataReq(id, sendData);

            }
        } catch (NullPointerException npe) {

            System.out.println(npe);
        }

    } while (true);

}[/code]

Método run para o recebimento e o método MCDataReq()

[code] public void run() {

    do {

        try {

            receiveSocket = new DatagramSocket(hostPort);
            byte buf[] = new byte[512];
            receivedPacket = new DatagramPacket(buf, buf.length);
            receiveSocket.receive(receivedPacket);
            receivedMessage = new String(receivedPacket.getData()).trim();
            System.out.println("Mensagem: " + receivedMessage);

        } catch (SocketException ex) {
            System.out.println("Nao foi possivel abrir socket: " + ex);
            System.exit(0);
        } catch (IOException ex) {
            System.out.println("ERROR: " + ex);
        }

    } while (true);

}

@Override
public boolean MCDataReq(short[] id, String sendData) {

    int sent = 0;
    int sendPort;

    if (sendData.split(" ")[3].equals("exit")) {

        System.out.println("Opcao para sair selecionada! Saindo...");
        System.exit(0);

    }

    for (int i = 0; i < MultiCastApplication.nUsers; i++) {

        try {

            InetAddress sendAddress = InetAddress.getByName(getInformationEntitie(id[i], 1));
            sendPort = Integer.parseInt(getInformationEntitie(id[i], 2));

            sendSocket = new DatagramSocket();
            sendSocket.connect(sendAddress, sendPort);

            byte[] sendDataBytes = new byte[512];
            sendDataBytes = sendData.getBytes();
            packetSend = new DatagramPacket(sendDataBytes, sendDataBytes.length, sendAddress, sendPort);

            sendSocket.send(packetSend);

            sent++;
        } catch (NullPointerException npe) {

            System.out.println(npe);

        } catch (SocketException e) {
            
            System.out.println("Erro ao abrir socket! " + e);
            
        } catch (IOException ex) {
            
            System.out.println("Erro! " + ex);
            
        }
    }

    return sent == id.length;

}[/code]