You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

本地网络自定义域名解析配置指南(Ubuntu 16.04+MikroTik环境)

用MikroTik路由器配置本地域名解析(替代bind9)

既然你尝试bind9搭建本地DNS没成功,咱们直接利用MikroTik路由器自带的DNS服务来搞定mydomain.local解析到192.168.0.31的需求,这样整个局域网(包括你的Ubuntu服务器)都能正常解析这个域名,步骤非常直观,跟着做就行:

1. 登录MikroTik路由器

你可以用以下任意一种方式登录:

  • Winbox:下载Winbox工具,输入路由器的局域网IP(比如192.168.0.1,根据你实际的路由器IP调整),输入用户名密码登录,这是最直观的图形化方式。
  • Web界面:在浏览器输入路由器IP,登录后台。
  • SSH:在终端执行ssh admin@192.168.0.1(替换成你的路由器用户名和IP)登录。

2. 启用并配置MikroTik DNS服务

2.1 开启远程DNS请求允许

进入IP -> DNS(图形化界面),或者在命令行执行:

/ip dns set allow-remote-requests=yes

这一步是让局域网内的设备可以把路由器当作DNS服务器来用。

2.2 添加静态DNS记录

在图形化界面的IP -> DNS里切换到Static Records标签页,点击右上角的+号,填写以下内容:

  • Namemydomain.local
  • Address192.168.0.31
  • TTL:保持默认(比如1d)即可,也可以改成30m让缓存更快失效

如果用命令行的话,执行:

/ip dns static add name=mydomain.local address=192.168.0.31

3. 配置局域网设备自动获取DNS(通过DHCP)

为了让所有自动获取IP的设备都自动使用路由器的DNS,咱们配置DHCP服务器:

  1. 进入IP -> DHCP Server -> Networks(图形化界面)
  2. 找到你的局域网网段(比如192.168.0.0/24),双击打开编辑窗口
  3. DNS Servers栏填写路由器的局域网IP(比如192.168.0.1
  4. 点击OK保存

命令行执行的话:

/ip dhcp-server network set [find address=192.168.0.0/24] dns-server=192.168.0.1

4. 手动配置Ubuntu服务器的DNS

因为你的Ubuntu服务器是静态IP,不会自动从DHCP获取DNS,所以需要手动设置:

4.1 如果你用的是传统的ifupdown网络管理

  1. 编辑网卡配置文件:
sudo nano /etc/network/interfaces
  1. 找到对应网卡的配置块(比如eth0ens33),添加一行:
dns-nameservers 192.168.0.1
  1. 保存退出后,重启网络服务:
sudo systemctl restart networking

4.2 如果你用的是netplan(Ubuntu 16.04后期版本可能支持)

  1. 编辑netplan配置文件(通常在/etc/netplan/目录下,比如00-installer-config.yaml):
sudo nano /etc/netplan/00-installer-config.yaml
  1. 修改配置,确保nameservers指向路由器IP:
network:
  ethernets:
    ens33:
      addresses: [192.168.0.31/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [192.168.0.1]
  version: 2
  1. 应用配置:
sudo netplan apply

5. 测试解析是否生效

在局域网内的任意设备上测试:

  • Windows设备:打开命令提示符,执行ping mydomain.localnslookup mydomain.local,应该看到解析到192.168.0.31
  • Ubuntu设备(包括服务器本身):执行ping mydomain.localdig mydomain.local,验证解析结果

如果解析失败,试试清空设备的DNS缓存:

  • Windows:ipconfig /flushdns
  • Ubuntu:sudo systemd-resolve --flush-caches

额外注意事项

  • 确保MikroTik防火墙没有阻止DNS流量:进入IP -> Firewall -> Filter Rules,检查是否有允许UDP 53和TCP 53端口的入站规则(来自局域网网段),如果没有,添加一条允许规则即可。
  • .local域名可能和mDNS服务冲突,但MikroTik的静态DNS记录优先级更高,一般不会有问题。

内容的提问来源于stack exchange,提问作者ibnul_K

火山引擎 最新活动