Files
SnarfCode/scripts/test_both_vips.py

28 lines
957 B
Python

import socket
import struct
def test_dns(server_ip, domain="google.com"):
header = struct.pack(">HHHHHH", 0x1234, 0x0100, 1, 0, 0, 0)
qname = b"".join(bytes([len(p)]) + p.encode("ascii") for p in domain.split(".")) + b"\x00"
qtype_qclass = struct.pack(">HH", 1, 1)
packet = header + qname + qtype_qclass
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.settimeout(4.0)
try:
sock.sendto(packet, (server_ip, 53))
resp, _ = sock.recvfrom(1024)
ancount = struct.unpack(">H", resp[6:8])[0]
print(f"SUCCESS: {server_ip} returned {len(resp)} bytes with {ancount} answers for {domain}!")
except Exception as e:
print(f"FAILED to query {server_ip}: {e}")
finally:
sock.close()
print("Testing Aerodrome Primary VIP (140.44.4.36):")
test_dns("140.44.4.36", "google.com")
print("\nTesting Spaceport Secondary VIP (140.44.4.65):")
test_dns("140.44.4.65", "google.com")