这个项目是一个由python实现的小型dns服务器,使用起来非常简单

tinydns的Python项目详细描述


tinydns

licensepython 基于gevent异步IO框架实现的轻量DNS服务器,易于配置和启动,可安装于Python2或Python3环境, 可用于爬虫等业务中。

1.如何安装

使用pip 安装

pip install  tinydns

2.配置及使用示例

创建配置文件

vim /etc/tinydns.conf

在文件中输入如下内容:

[tinydns]
*.baidu.com = 192.168.1.1,192.168.1.2,192.168.1.3
www.baidu.com  = 192.168.1.4,192.168.1.5
image.baidu.com =  192.168.1.1

上面的配置文件所代表的意思是:

  • 所有符合*.baidu.com的域名(除了www.baidu.com image.baidu.com)均随机解析到192.168.1.1 192.168.1.2 192.168.1.3中的随意一个
  • 所有符合www.baidu.com的域名 随机解析到 192.168.1.4 192.168.1.5中的随机一个
  • 所有符合image.baidu.com的域名 解析到 192.168.1.1
  • 除了以上之外的域名则直接从本机网络设置中获取到对应的DNS记录返回给客户端

启动服务

tinydns -c /etc/tinydns.conf

备注:

如在服务运行中 修改了配置文件 无需重启,服务会自动加载新的配置文件内容。

3.联系我们

zhoukunpeng@gongchang.com18438697706@163.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java搜索具有外键的JPA实体的约定是什么?   java事务没有使用事务和嵌套方法的2个实例回滚   SpringBootJavaMessageFormat。使用umlauts格式(ä/ö/ü)   java如何通过字符串在sqlite中搜索列   JAVAlang.ClassNotFoundException:org。冬眠Hibernate4的例外情况   java消息正文在Gmail中被弄乱了   java Apache Ignite未使用空值更新缓存   Java正则表达式未捕获组   java onBackPressed();除非我叫super否则不行。onBackPressed();两次密码   java CustomAlertDialog在删除数据库记录后未完成其进程   C++中的迭代器(Stl)与java,是否存在概念上的区别?   Java在不知道字符编码的情况下将字节[]转换为字符串   来自本地WSDL文件的java Web服务客户端   java工具可用于在一个位置聚合所有项目相关信息   java在Netbeans中的maven项目中设置依赖项