多播接收器无法捕获数据

时间:2017-07-18 09:21:24

标签: java multicast tcpdump

我想捕获特定多播IP地址和端口号上的网络流量。

出于测试目的,我通过225.1.1.7 ip和3100端口上的网络重放pcap文件。

我尝试使用下面的命令 -

使用tcpdump捕获
sudo tcpdump -i eno1 -s0 -vv host 225.1.1.7 and port 3100

它是工作文件。

我的 java程序 -

class Temp {

    public static void main(String[] args) throws UnknownHostException, IOException {

        int port = 3100;
        String group = "225.1.1.7";

        MulticastSocket s = new MulticastSocket(port);

        s.joinGroup(InetAddress.getByName(group));

        byte buf[] = new byte[1024];
        DatagramPacket pack = new DatagramPacket(buf, buf.length);
        s.receive(pack);

        System.out.println("Received data from: " + pack.getAddress().toString()
                + ":" + pack.getPort() + " with length: "
                + pack.getLength());
        System.out.write(pack.getData(), 0, pack.getLength());

        s.leaveGroup(InetAddress.getByName(group));
        s.close();

    }
}

为什么上面的java程序不会从同一个组播ip和端口接收任何数据?

0 个答案:

没有答案