mirror of
https://github.com/HoneyryderChuck/httpx.git
synced 2025-10-07 00:05:02 -04:00
41 lines
1.2 KiB
Ruby
41 lines
1.2 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
require "resolv"
|
|
require "httpx"
|
|
|
|
host = "127.0.0.11"
|
|
port = 53
|
|
|
|
# srv_hostname = "aerserv-bc-us-east.bidswitch.net"
|
|
record_type = Resolv::DNS::Resource::IN::A
|
|
|
|
# # addresses = nil
|
|
# # Resolv::DNS.open(nameserver: host) do |dns|
|
|
# # require "pry-byebug"; binding.pry
|
|
# # addresses = dns.getresources(srv_hostname, record_type)
|
|
# # end
|
|
|
|
# message_id = 1
|
|
# buffer = HTTPX::Resolver.encode_dns_query(srv_hostname, type: record_type, message_id: message_id)
|
|
|
|
# io = TCPSocket.new(host, port)
|
|
# buffer[0, 2] = [buffer.size, message_id].pack("nn")
|
|
# io.write(buffer.to_s)
|
|
# data, _ = io.readpartial(2048)
|
|
# size = data[0, 2].unpack1("n")
|
|
# answer = data[2..-1]
|
|
# answer << io.readpartial(size) if size > answer.bytesize
|
|
|
|
# addresses = HTTPX::Resolver.decode_dns_answer(answer)
|
|
|
|
# puts "(#{srv_hostname}) addresses: #{addresses}"
|
|
|
|
srv_hostname = "www.sfjewjfwigiewpgwwg-native-1.com"
|
|
socket = UDPSocket.new
|
|
buffer = HTTPX::Resolver.encode_dns_query(srv_hostname, type: record_type)
|
|
socket.send(buffer.to_s, 0, host, port)
|
|
recv, _ = socket.recvfrom(512)
|
|
puts "received #{recv.bytesize} bytes..."
|
|
addresses = HTTPX::Resolver.decode_dns_answer(recv)
|
|
puts "(#{srv_hostname}) addresses: #{addresses}"
|