smartdns 部署最佳实践

这篇具有很好参考价值的文章主要介绍了smartdns 部署最佳实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、基础安装步骤:

软件下载:

操作系统 centos 7

smartdns 最新版:

GitHub - pymumu/smartdns: A local DNS server to obtain the fastest website IP for the best Internet experience, 一个本地DNS服务器,获取最快的网站IP,获得最佳上网体验。

根据需要下载最新版的软件安装包 注意安装包的类型和操作系统的类型保持一致

下载完成后进行解压使用

$ tar zxf smartdns.1.yyyy.MM.dd-REL.x86_64-linux-all.tar.gz
$ cd smartdns
$ chmod +x ./install
$ ./install -i
#参数说明   解析中有prefix参数  但是指定的时候出现异常  直接使用-i进行安装

安装完成之后会在etc下生成配置文件信息:

/etc/smartdns/smartdns.conf

2、添加dnsmasq-china-list:

作用:提高中文域名的解析速度

获取最近的CDN节点信息 使得国内和VPN都可以获得最佳的CDN节点

配置方式为:

- 使用dnsmasq-china-list配置(GitHub - felixonmars/dnsmasq-china-list: Chinese-specific configuration to improve your favorite DNS server. Best partner for chnroutes.)

- git clone https://github.com/felixonmars/dnsmasq-china-list
- cd dnsmasq-china-list
- make smartdns SERVER=china   
#使用make替换关键字效果  生成对应的conf文件

- 拷贝生成的配置文件到smartdns的配置目录中/etc/smartdns/

 - cp *.smartdns.conf /etc/smartdns

- 修改smartdns配置文件/etc/smartdns/smartdns.conf

- vim /etc/smartdns/smartdns.conf

- 主要调整的配置cache-size,及server、address等配置,完整生效配置供参考

3、修改smartdns 主要配置信息:

#定义dnsmasq-china-list  快速解析功能
conf-file accelerated-domains.china.smartdns.conf
conf-file apple.china.smartdns.conf
conf-file google.china.smartdns.conf
#接口绑定信息
bind-tcp [::]:53
bind :53
#解析缓存条数
cache-size 4096
# 开启域名预取,smartdns将在域名ttl即将超时的时候,再次发送查询请求,并缓存查询结果供后续使用
prefetch-domain yes
# 上游DNS返回多个结果时,使用ping方式作为测速方法
speed-check-mode ping
#日志记录等级
log-level info
#使用server  配置上游服务器
server 202.96.128.166
server 223.5.5.5
server 223.6.6.6
server 119.29.29.29
#配置server的组关系
server 8.8.4.4 -group whatsappdns -exclude-default-group
server-tcp 8.8.4.4
#配置address 定义某个指定的域名IP解析关系
address /smtp.test.xyz/172.20.2.15
#测试解析地址   根据实际情况进行配置
address /mail.test.xyz/172.20.2.15
address /yarn.test.com/192.168.2.1

配置完成之后 需要将服务器的防火墙关闭 或者是iptables 放行 53端口 UDP/TCP

4、配置服务启动:

# /usr/lib/systemd/system/smartdns.service
[Unit]
Description=SmartDNS Server
After=network.target 
StartLimitBurst=0
StartLimitIntervalSec=60

[Service]
Type=forking
PIDFile=/var/run/smartdns.pid
EnvironmentFile=/etc/default/smartdns
ExecStart=/usr/sbin/smartdns -p /var/run/smartdns.pid $SMART_DNS_OPTS 
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
RestartSec=2
TimeoutStopSec=5

[Install]
WantedBy=multi-user.target
Alias=smartdns.service

配置关键参数 设置热启动:

ExecReload=/bin/kill -HUP $MAINPID

5、验证分析:

检测服务是否正常启动

systemctl  status  smartdns.service 

systemctl  enable smartdns.service 

客户端验证:

nslookup -querytype=ptr smartdns(dns服务器的IP地址)
例如:
C:\Users\Administrator>nslookup -querytype=ptr 192.168.2.1
服务器:  prod-app-192168002001.lan
Address:  192.168.2.11

非权威应答:
11.2.168.192.in-addr.arpa       name = prod-app-192168002001.lan

查看命令结果中的 name 是否为 smartdns 或你的主机名,如果是则表示生效

查看端口启动状态:

smartdns 部署最佳实践

 文章来源地址https://www.toymoban.com/news/detail-474359.html

到了这里,关于smartdns 部署最佳实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用Redis实现双平面部署的最佳实践

    双平面部署是一种常见的系统架构模式,用于提高系统的可靠性和性能。在这种架构中,拥有相同功能的两个平面同时运行,其中一个平面作为主平面处理请求,而另一个平面则作为备份平面。在传统的双平面部署中,通常会使用数据库复制和负载均衡技术来实现高可用性,

    2024年02月16日
    浏览(38)
  • DockerCompose - 微服务项目部署全过程(最佳实践)

    目录 一、微服务项目部署 1.1、项目介绍 1.2、准备 MySQL 初始化文件 1.3、pom.xml 插件 1.4、测试工作 1.5、编写 Dockerflie 文件 1.6、编写 DockerCompose.yml 文件 1.7、修改 application.yml 文件 1.8、打包上传服务器 1.9、微服务,启动! 1.10、测试结果 a)技术选型:SpringCloud 2021.0.1 、SpringC

    2024年04月16日
    浏览(49)
  • 猿创征文|Docker部署Oracle 19C及最佳实践

    📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10年DBA工作经验 一位上进心十足的【大数据领域博主】!😜😜😜 中国DBA联盟(ACDU)成员,目前从事DBA及程序编程 擅长主流数据Oracle、MySQL、PG 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。

    2024年01月17日
    浏览(43)
  • 在生产环境中部署Elasticsearch:最佳实践和故障排除技巧

    「作者主页」 :雪碧有白泡泡 「个人网站」 :雪碧的个人网站 「推荐专栏」 : ★ java一站式服务 ★ ★ React从入门到精通 ★ ★ 前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升 ★ ★ 从0到英雄,vue成神之路 ★ ★ 解决算法,一个专栏就够了 ★ ★

    2024年02月16日
    浏览(42)
  • CI/CD 管道安全:构建和部署之外的最佳实践

    鉴于对快速创新和敏捷方法论采用的需求,持续集成/持续部署 (CI/CD) 管道已成为构建所有 DevOps 流程的基础。他们是高效交付的支柱。  事实上,根据持续交付状态报告,使用 CI/CD 工具与所有指标上更好的软件交付性能相关。 这些管道给组织带来了难以置信的安全风险,后

    2024年02月19日
    浏览(37)
  • 云计算:从基础架构原理到最佳实践

    作者:禅与计算机程序设计艺术 云计算(Cloud Computing)概念提出于上世纪90年代末,是指利用网络将存储、计算、应用等资源通过网络提供给用户所购买、使用的服务,属于高度动态和弹性的IT技术。其核心思想在于利用计算机网络、存储设备、服务器、软件及平台等资源,

    2024年02月08日
    浏览(47)
  • 云计算: 从基础架构原理到最佳实践

    作者:禅与计算机程序设计艺术 云计算(Cloud computing)是一种新型的网络服务模型,通过将应用程序、数据、服务和硬件资源通过互联网提供给用户,从而实现IT基础设施和业务软件部署、迁移、管理和运营的方式。基于云计算的软件服务主要分为三个层次:基础设施即服务

    2024年02月08日
    浏览(51)
  • docker (六)-进阶篇-数据持久化最佳实践MySQL部署

    容器的数据挂载通常指的是将宿主机(虚拟机或物理机)上的目录或文件挂载到容器内部 详情参考docker官网文档 查询官网,MySQL必须要设置超级用户密码的环境变量 说明:上面的 -v 用于将项目数据目录、日志目录、配置文件目录映射到宿主机, --restart=always 表示重启  doc

    2024年02月20日
    浏览(47)
  • 探索Flutter框架对iOS应用打包与部署的最佳实践

    本文探讨了使用Flutter开发的iOS应用能否上架,以及上架的具体流程。苹果提供了App Store作为正式上架渠道,同时也有TestFlight供开发者进行内测。合规并通过审核后,Flutter应用可以顺利上架。但上架过程可能存在一些挑战,因此可能需要专业技术人员或上架服务商的协助。

    2024年04月16日
    浏览(49)
  • 使用 Swagger 导入 Postman 最佳实践与步骤解析_swagger-bootstrap-ui怎么导出到postman或者apipost

    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新软件测试全套学习资料》

    2024年04月25日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包