项目地址 mdns
本项目受 overture 启发
之前苦于透明代理需要拉 ip 段,和域名列表是分开的,感觉很不清蒸( 。就写了一个这样东西,将 dns 查询到的结果自动加入 ipset 中。
一个支持插件的 dns 代理工具
{
"addr": ":53",
"upstream": {
"name": "Google DNS",
"address": "8.8.8.8:53",
"protocol": "tcp",
"socks5_address": "127.0.0.1:1080",
"timeout": 6
},
"plugins": [
{
"name": "log",
"config": {
"log_file": ""
}
},
{
"name": "cache",
"config": {
"capacity": 1024,
"MTTL": 3600
}
},
{
"name": "dispatcher",
"config": {
"areas": {
"TEST": {
"upstream": {
"name": "114 DNS",
"address": "114.114.114.114:53",
"protocol": "udp",
"socks5_address": "",
"timeout": 6
},
"domain_file": "config.sample.d/domain_test.txt"
}
}
}
},
{
"name": "ipset",
"config": {
"sets": {
"TEST": {
"domain_file": "config.sample.d/domain_test.txt",
"ip_file": "config.sample.d/ip_test.txt"
}
}
}
}
]
}
udp
,tcp
,tcp-tls
支持简单的查询日志记录
缓存 最大缓存数量capacity
和最小 ttl MTTL
分流器,通过匹配domain_file
执行分流策略,选择不同的上游
根据domain_file
将查询到的 ip 插入 ipset 中,暂未支持ip_file
1
missdeer 2020-04-15 09:35:10 +08:00
|