我正在尝试将udp数据包发送到指定的DNS服务器并从dns服务器接收响应.
问题是我不会从服务器得到响应.我尝试使用我的客户端套接字接收数据包,但没有任何成功.
寻求帮助来解决这个问题.
这是我的UdpClient.java
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;
class UdpClient
{
public static void main (String args[]) throws Exception
{
Scanner scan = new Scanner(System.in);
System.out.print("Enter a hostname: ");
// host name
String hostname = scan.next();
// socket
DatagramSocket clientSocket = new DatagramSocket();
InetAddress ipAddress = InetAddress.getByName(hostname);
String message = "0471001000000";
byte[] data = message.getBytes(StandardCharsets.UTF_8);
// datagram packet
DatagramPacket sendPacket = new DatagramPacket(data, data.length, ipAddress, 53);
// send the packet …
Run Code Online (Sandbox Code Playgroud)