40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
import requests
|
|
import json
|
|
|
|
token = 'UPmCF82KqqqWghdlnhfUaQ4Kp24c6qth'
|
|
networkId = 'af78bf94361850a3'
|
|
domainSuffix = 'fbh'
|
|
|
|
headers={
|
|
'Authorization': f"token {token}"
|
|
}
|
|
url=f"https://api.zerotier.com/api/v1/network/{networkId}/member"
|
|
param = {}
|
|
response = requests.get(url=url,params=param,headers=headers) #三个参数
|
|
memberData = json.loads(response.text)
|
|
|
|
with open("smartdns.conf", '+w') as f:
|
|
f.write(f"bind [::]:53\n")
|
|
# 谷歌
|
|
f.write(f"server 8.8.8.8\n")
|
|
f.write(f"server 8.8.4.4\n")
|
|
# cloudflare
|
|
f.write(f"server 1.1.1.1\n")
|
|
f.write(f"server 1.0.0.1\n")
|
|
# 114
|
|
f.write(f"server 114.114.114.114\n")
|
|
# baidu
|
|
f.write(f"server 180.76.76.76\n")
|
|
# 腾讯
|
|
f.write(f"server 119.29.29.29\n")
|
|
f.write(f"server 119.28.28.28\n")
|
|
# 阿里
|
|
f.write(f"server 223.5.5.5\n")
|
|
f.write(f"server 223.6.6.6\n")
|
|
# 字节
|
|
f.write(f"server 180.184.1.1\n")
|
|
f.write(f"server 180.184.2.2\n")
|
|
for i in memberData:
|
|
config=i['config']
|
|
print(f"id: {config['id']};\tname: {i['name']};\tdescription: {i['description']};\tip: {config['ipAssignments']}")
|
|
f.write(f"address /{i['name']}.{domainSuffix}/{','.join(config['ipAssignments'])}\n") |