Compare commits
No commits in common. "3c47a6c114733203bd12617245dea0fc1682b01d" and "d89dd3e0ca1bcaa1fb04c5fc10f728fd04f8872a" have entirely different histories.
3c47a6c114
...
d89dd3e0ca
@ -4,7 +4,7 @@ on:
|
|||||||
push:
|
push:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
Build_Docker:
|
Build Docker:
|
||||||
runs-on: [ubuntu-latest, amd] # Add amd to require amd64
|
runs-on: [ubuntu-latest, amd] # Add amd to require amd64
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
|
47
proxy.py
47
proxy.py
@ -1,47 +0,0 @@
|
|||||||
import socket
|
|
||||||
from dnslib.server import DNSHandler, BaseResolver, DNSServer, DNSLogger
|
|
||||||
from dnslib import DNSRecord
|
|
||||||
import time
|
|
||||||
|
|
||||||
UDP_IP = '127.0.0.1'
|
|
||||||
UDP_PORT = 5350
|
|
||||||
TCP_IP = '0.0.0.0'
|
|
||||||
TCP_PORT = 5351
|
|
||||||
|
|
||||||
logger = DNSLogger(log="none")
|
|
||||||
|
|
||||||
class TCPHandler(DNSHandler):
|
|
||||||
def handle(self):
|
|
||||||
try:
|
|
||||||
while True:
|
|
||||||
data = self.request.recv(1024).strip()
|
|
||||||
if not data:
|
|
||||||
break
|
|
||||||
with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as udp_socket:
|
|
||||||
udp_socket.sendto(data, (UDP_IP, UDP_PORT))
|
|
||||||
response_data, _ = udp_socket.recvfrom(1024)
|
|
||||||
self.request.sendall(response_data)
|
|
||||||
except Exception as e:
|
|
||||||
print(e)
|
|
||||||
|
|
||||||
|
|
||||||
class SimpleResolver(BaseResolver):
|
|
||||||
def resolve(self, request, handler):
|
|
||||||
try:
|
|
||||||
with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as udp_socket:
|
|
||||||
udp_socket.sendto(request.pack(), (UDP_IP, UDP_PORT))
|
|
||||||
response_data, _ = udp_socket.recvfrom(1024)
|
|
||||||
dns_response = DNSRecord.parse(response_data)
|
|
||||||
return dns_response
|
|
||||||
except Exception as e:
|
|
||||||
return request.reply()
|
|
||||||
|
|
||||||
|
|
||||||
def start_tcp_server():
|
|
||||||
server = DNSServer(SimpleResolver(), address=TCP_IP, port=TCP_PORT, tcp=True, logger=logger)
|
|
||||||
print(f"TCP server listening on {TCP_IP}:{TCP_PORT}")
|
|
||||||
server.start()
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
start_tcp_server()
|
|
||||||
print("Started")
|
|
Loading…
Reference in New Issue
Block a user