一个简单的DNS server
来源:互联网 发布:商城源码授权便宜 编辑:程序博客网 时间:2024/06/05 07:03
'''
This program simulate as a DNS server
server = '192.168.160.1'
dns_header = '\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00'
dns_queries = ''
#\x7f\x00\x00\x01 is 127.0.0.1 you can replace it with
dns_answers = '\xc0\x0c\x00\x01\x00\x01'+'\x00\x00\x01\x2c'+'\x00\x04\x7f\x00\x00\x01'
address = (server, 53)
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(address)
while True:
data, addr = s.recvfrom(2048)
print "received from", addr
id = data[0:2]
dns_queries = data[12:]
dns_msg = id+dns_header+dns_queries+dns_answers
s.sendto(dns_msg,addr)
s.close()
This program simulate as a DNS server
'''
一直工作在UDP 53端口监听DNS请求。收到请求后取出transcation id,query的数据,构造一个DNS相应包。每次返回的IP地址都是127.0.0.1(\x7f\x00\x00\x01)
用于样本分析,触发网络行为。
server = '192.168.160.1'
dns_header = '\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00'
dns_queries = ''
#\x7f\x00\x00\x01 is 127.0.0.1 you can replace it with
dns_answers = '\xc0\x0c\x00\x01\x00\x01'+'\x00\x00\x01\x2c'+'\x00\x04\x7f\x00\x00\x01'
address = (server, 53)
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(address)
while True:
data, addr = s.recvfrom(2048)
print "received from", addr
id = data[0:2]
dns_queries = data[12:]
dns_msg = id+dns_header+dns_queries+dns_answers
s.sendto(dns_msg,addr)
s.close()
- 一个简单的DNS server
- 一个简单的DNS客户端demo
- 一个简单的http server
- 一个主域名服务器DNS快速简单的配置方法
- DNS服务器概念的简单的介绍,与搭建一个简单的DNS名称缓存服务器,实现域名解析(一)
- RAC的dns server配置
- sql server 一个简单的函数
- 一个支持上传的简单http server
- 一个最简单的SQL SERVER 触发器
- 一个简单web server 的实现
- 一个简单的server和client程序
- NanoHTTPD web server的一个简单荔枝
- tomcat(1)一个简单的web server
- Linux下简单的DNS
- Dns服务的简单配置
- DNS Server
- DNS Server
- 一个简单的c语言版的DNS解析客户端,能提供解析耗时
- 如何修改mysql数据库的密码
- hdu1871 无题
- java基础
- Windows编程中的映射模式和坐标转换
- 初识block
- 一个简单的DNS server
- javascript,pagemethods
- Xcode SVN配置方法
- jquery 各版本设置checkbox的checked属性
- iOS如何避免图像解压缩的时间开销
- 命令行查看memcache状态
- 面试准备
- mysql的root用户删除后的解决办法
- P2P 之 UDP穿透NAT的原理与实现(附源代码)