Files
KLALB/src/org/kne/cloud/network/nathole/UDPNatholeTest.java
T
2024-01-30 16:54:57 +08:00

43 lines
1.3 KiB
Java

package org.kne.cloud.network.nathole;
import java.io.IOException;
import java.net.BindException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.MulticastSocket;
import java.net.Socket;
import java.net.SocketAddress;
import java.net.SocketOption;
import java.net.SocketOptions;
import java.nio.channels.SocketChannel;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class UDPNatholeTest {
public static ExecutorService exc=Executors.newCachedThreadPool();
public static void main(String[] args) throws IOException {
InetAddress addr=InetAddress.getByName("10.235.16.1");
for (int i1 = 1024; i1 < 65536; i1++) {
MulticastSocket ms=new MulticastSocket(i1);
//ms.setReuseAddress(true);
ms.setSendBufferSize(65536);
DatagramPacket fp=new DatagramPacket(new byte[1], 1, addr, 13000);
ms.send(fp);
new Thread(()->{
DatagramPacket rp=new DatagramPacket(new byte[10], 10);
try {
ms.receive(rp);
System.err.println(rp.getAddress());
System.err.println(rp.getLength());
System.exit(0);
} catch (IOException e) {
e.printStackTrace();
}
}).start();
System.out.println(i1);
}
}
}