Cómo construir un paquete de consulta DNS a través de Python
Puede probar los siguientes pasos:
Haga ping a un nombre de dominio, use Wireshark para realizar una consulta de DNS y vea cuál es el valor de cada campo;
Use la estructura de Python para presionar estos campos Empaquetados secuencialmente en datos binarios;
Utilice el socket de Python para enviar los datos construidos al puerto UDP 53 del servidor DNS, el puerto local puede ser especificado por usted mismo;
Utilice el socket de Python para leer del búfer Obtenga los datos devueltos por el servidor;
Utilice la estructura Python para descomprimir todos los campos en los datos binarios en orden;
Imprimir y mostrar.