def serveDNS(logger, status_ctrl, main_frame):
resolver = InterceptResolver('8.8.8.8',
53,
'60s',
status_ctrl,
main_frame)
DNSHandler.log = {
'log_request', # DNS Request
'log_reply', # DNS Response
'log_truncated', # Truncated
'log_error', # Decoding error
}
config = wx.ConfigBase.Get()
host = config.Read("host") or socket.gethostbyname(socket.gethostname())
dnsport = config.Read("dnsport") or "53"
try:
udp_server = DNSServer(resolver,
port=int(dnsport),
address=host,
logger=logger)
except Exception as e:
evt = custom_events.wxStatusEvent(message='Error starting DNS proxy: %s' % e)
wx.PostEvent(status_ctrl,evt)
return
udp_server.start_thread()
evt = custom_events.wxStatusEvent(message="proxy started")
wx.PostEvent(status_ctrl,evt)
try:
while udp_server.isAlive():
time.sleep(1)
except KeyboardInterrupt:
sys.exit()
评论列表
文章目录