AdGuardHome端口冲突解决:修改默认端口方法

AdGuardHome端口冲突解决:修改默认端口方法

【免费下载链接】AdGuardHome Network-wide ads & trackers blocking DNS server 【免费下载链接】AdGuardHome 项目地址: https://gitcode.com/gh_mirrors/ad/AdGuardHome

你是否遇到过启动AdGuardHome时提示"端口已被占用"的错误?本文将详细介绍如何通过修改配置文件解决DNS服务和Web管理界面的端口冲突问题,让你轻松完成AdGuardHome的部署。读完本文后,你将掌握查看端口占用、修改配置文件以及验证端口修改的完整流程。

端口冲突常见场景

AdGuardHome默认使用两个关键端口:

  • DNS服务端口:53(容易与系统自带DNS服务冲突)
  • Web管理界面端口:3000(可能与其他Web服务冲突)

当启动AdGuardHome时出现类似"address already in use"的错误提示,通常意味着这两个端口中的一个或两个已被其他程序占用。

配置文件结构解析

AdGuardHome的端口配置主要通过AdGuardHome.yaml文件管理。我们可以参考示例配置文件internal/next/AdGuardHome.example.yaml了解端口相关配置项:

dns:
    addresses:
        - '0.0.0.0:53'  # DNS服务默认端口
http:
    addresses:
        - '0.0.0.0:3000'  # Web管理界面默认端口
    pprof:
        port: 6060  # 调试端口

修改DNS服务端口

  1. 打开AdGuardHome配置文件(通常位于安装目录下的AdGuardHome.yaml

  2. 找到dns部分的addresses配置项:

    dns:
        addresses:
            - '0.0.0.0:53'
    
  3. 将端口号53修改为系统中未被占用的端口,例如5353:

    dns:
        addresses:
            - '0.0.0.0:5353'
    
  4. 保存文件并重启AdGuardHome服务

修改Web管理界面端口

  1. 在同一配置文件中,找到http部分的addresses配置项:

    http:
        addresses:
            - '0.0.0.0:3000'
    
  2. 将端口号3000修改为其他可用端口,例如8080:

    http:
        addresses:
            - '0.0.0.0:8080'
    
  3. 保存文件并重启AdGuardHome服务

验证端口修改结果

修改完成后,可以通过以下步骤验证端口是否配置成功:

  1. 启动AdGuardHome服务
  2. 使用netstat或ss命令检查端口占用情况:
    netstat -tuln | grep AdGuardHome
    
  3. 尝试通过新的Web端口访问管理界面,例如http://localhost:8080
  4. 使用dig命令测试DNS服务是否正常工作:
    dig @localhost -p 5353 example.com
    

注意事项

  • 确保选择的端口未被系统保留或其他程序占用
  • 修改端口后,所有客户端设备需要更新DNS服务器设置
  • 如果使用防火墙,需要开放新配置的端口
  • 对于Docker部署,还需要同步修改端口映射配置

通过以上步骤,你可以轻松解决AdGuardHome的端口冲突问题,确保服务正常运行。如果需要了解更多配置选项,可以参考项目文档README.md或配置迁移模块internal/configmigrate/中的相关实现。

【免费下载链接】AdGuardHome Network-wide ads & trackers blocking DNS server 【免费下载链接】AdGuardHome 项目地址: https://gitcode.com/gh_mirrors/ad/AdGuardHome

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值