香港服务器租用后如何手动配置DNS?

租用香港服务器后,手动配置 DNS(Domain Name System) 是确保域名能够解析到服务器 IP 并正常访问网站的关键步骤。

1. 什么是 DNS?

DNS 是将域名(如 www.example.com)解析为服务器 IP 地址(如 192.168.1.1)的系统。通过正确配置 DNS,用户可以通过域名访问您的网站而无需记住 IP 地址。


2. 配置 DNS 的场景

  1. 香港服务器用作网站托管
    配置域名解析到服务器的公网 IP 地址。
  2. 搭建自定义 DNS 服务
    使用服务器充当自己的 DNS 解析服务器。
  3. 更改服务器的默认 DNS 解析器
    修改服务器用于解析域名的外部 DNS 服务(如 Google DNS、Cloudflare DNS)。

3. 配置域名解析到香港服务器

3.1 获取服务器公网 IP 地址

  1. 登录到您的香港服务器。
  2. 使用以下命令查看服务器的公网 IP:
    bash
     
    curl ifconfig.me
    
    或:
    bash
     
    curl ipinfo.io/ip
    
    记录返回的 IP 地址(如 123.123.123.123)。

3.2 修改域名的 DNS 设置

需要在域名注册商的管理平台中,将域名解析到服务器 IP。

步骤 1:登录域名控制面板

  • 登录到您域名注册商的管理平台(如 GoDaddy、Namecheap、阿里云、腾讯云等)。

步骤 2:修改 A 记录

  1. 找到 DNS 管理域名解析 页面。
  2. 添加或修改以下类型的记录:
    • A记录
      • 主机名(Host):@(代表根域名,如 example.com)。
      • 记录类型(Type):A
      • 记录值(Value):您的服务器公网 IP 地址(如 123.123.123.123)。
      • TTL:默认值(如 3600 秒)。
    • WWW 子域名
      • 主机名:www
      • 记录类型:A
      • 记录值:同样填写服务器 IP 地址。

步骤 3:保存更改

完成后,保存记录并等待 DNS 生效(大约需要 10 分钟到 48 小时不等,取决于 TTL 值)。


3.3 测试域名解析

  1. 使用以下命令测试域名是否解析到正确的 IP:

    bash
     
    nslookup example.com
    

    或:

    bash
     
    dig example.com
    

    确认返回的 IP 地址是否是您的服务器 IP。

  2. 如果需要检查子域名解析:

    bash
     
    nslookup www.example.com
    

4. 在香港服务器上配置自定义 DNS 服务

如果您希望使用自己的香港服务器作为独立的 DNS 解析服务器,可以通过以下步骤实现。

4.1 安装 DNS 服务

CentOS 系统:安装 Bind

  1. 更新系统并安装 Bind:
    bash
     
    sudo yum update -y
    sudo yum install bind bind-utils -y
    
  2. 启动 Bind 并设置开机自启:
    bash
     
    sudo systemctl start named
    sudo systemctl enable named
    

Ubuntu/Debian 系统:安装 Bind

  1. 更新系统并安装 Bind:
    bash
     
    sudo apt update
    sudo apt install bind9 bind9utils -y
    
  2. 启动 Bind 并设置开机自启:
    bash
     
    sudo systemctl start bind9
    sudo systemctl enable bind9
    

4.2 配置 DNS 区域文件

  1. 打开主配置文件:

    bash
     
    sudo nano /etc/named.conf   # CentOS
    sudo nano /etc/bind/named.conf.local  # Ubuntu
    
  2. 添加区域配置,指定域名和区域文件:

    plaintext
     
    zone "example.com" IN {
        type master;
        file "/var/named/example.com.zone";  # CentOS 路径
        allow-update { none; };
    };
    
  3. 创建区域文件:

    bash
     
    sudo nano /var/named/example.com.zone  # CentOS
    sudo nano /etc/bind/db.example.com  # Ubuntu
    
  4. 在区域文件中填写域名解析记录:

    plaintext
     
    $TTL 86400
    @   IN  SOA ns1.example.com. admin.example.com. (
        20230926 ; Serial
        3600     ; Refresh
        1800     ; Retry
        1209600  ; Expire
        86400    ; Minimum TTL
    )
    @   IN  NS  ns1.example.com.
    @   IN  NS  ns2.example.com.
    @   IN  A   123.123.123.123
    www IN  A   123.123.123.123
    ns1 IN  A   123.123.123.123
    ns2 IN  A   123.123.123.124
    
  5. 修改文件权限以确保 Bind 可以访问:

    bash
     
    sudo chown named:named /var/named/example.com.zone  # CentOS
    sudo chown bind:bind /etc/bind/db.example.com  # Ubuntu
    
  6. 重启 Bind 服务:

    bash
     
    sudo systemctl restart named   # CentOS
    sudo systemctl restart bind9   # Ubuntu
    

4.3 配置防火墙

确保服务器的 53 端口(DNS 服务端口)对外开放:

bash
 
sudo firewall-cmd --permanent --add-port=53/tcp
sudo firewall-cmd --permanent --add-port=53/udp
sudo firewall-cmd --reload

或:

bash
 
sudo ufw allow 53

4.4 测试自定义 DNS 服务

  1. 使用 dig 命令测试:

    bash
     
    dig @123.123.123.123 example.com
    

    确认返回正确的解析记录。

  2. 如果使用的是本地 DNS 服务,可以配置 /etc/resolv.conf

    bash
     
    sudo nano /etc/resolv.conf
    

    添加以下内容:

    plaintext
     
    nameserver 123.123.123.123
    

5. 更改服务器的默认 DNS 解析器

如果想更改香港服务器的默认外部 DNS 服务(如 Google DNS、Cloudflare DNS 等):

  1. 编辑 /etc/resolv.conf 文件:

    bash
     
    sudo nano /etc/resolv.conf
    
  2. 修改或添加以下内容:

    plaintext
     
    nameserver 8.8.8.8      # Google DNS
    nameserver 8.8.4.4      # Google DNS
    nameserver 1.1.1.1      # Cloudflare DNS
    
  3. 保存并退出。


6. 常见问题及解决方法

6.1 DNS 配置修改后无法生效

  1. TTL 值导致生效延迟
    • 检查域名的 TTL 值(默认 3600 秒,即 1 小时)。
    • 等待 TTL 过期后,新的解析记录才会生效。
  2. 缓存问题
    • 清除本地 DNS 缓存:
      • Windows:
        cmd
         
        ipconfig /flushdns
        
      • macOS/Linux:
        bash
         
        sudo systemd-resolve --flush-caches
        

6.2 DNS 服务无法启动

  1. 检查配置文件语法是否正确:
    bash
     
    sudo named-checkconf
    sudo named-checkzone example.com /var/named/example.com.zone
    
  2. 查看日志文件获取详细错误信息:
    bash
     
    sudo tail -f /var/log/messages   # CentOS
    sudo tail -f /var/log/syslog     # Ubuntu
    

7. 总结

配置 DNS 是香港服务器网站部署中的关键步骤。以下是常见操作:

  1. 将域名解析到服务器的公网 IP(通过域名注册商控制面板)。
  2. 在服务器上配置自定义 DNS 服务,用于管理和解析域名。
  3. 修改服务器的默认 DNS 解析器以提升解析速度。

 

通过正确配置 DNS,您的网站将能够正常解析并对外提供服务,同时保证访问速度和稳定性。

 

超过 50,000 人的信任 网硕互联期待你加入我们的会员。