前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iStore软路由自定义DNS服务

iStore软路由自定义DNS服务

作者头像
HHTjim 部落格
发布2024-06-11 09:34:26
3970
发布2024-06-11 09:34:26
举报
文章被收录于专栏:HHTjim'S 部落格

iStore软路由自定义DNS服务

作者:matrix 被围观: 9 次 发布时间:2024-06-10 分类:零零星星 | 无评论 »

家庭网络使用iStoreOpenwrt软路由系统作为旁路网关可以更好的控制进出流量。比如拦截广告请求的域名,本地 server 域名...

局域网环境有一个常驻服务,这次给他配置一个专属域名homeserver.lan。只要设备接入家庭网络,不管客户端设置的什么DNS服务都可以使用。

静态IP配置

将常驻服务的IP固定,方便后续访问。我自己使用的 iKuai主路由配置。

iStore(openwrt)的话可以参考下面形式自己设置:

打开iStore终端使用uci命令配置 dhcp 服务,或者自己在页面点击完成配置

命令行方式:

代码语言:javascript
复制
uci add dhcp host
uci set dhcp.@host[-1].name='homeserver.lan'
uci set dhcp.@host[-1].mac='AA:BB:CC:DD:EE:FF' # 绑定的 mac 
uci set dhcp.@host[-1].ip='192.168.11.11' # 需要访问的服务IP
uci commit dhcp

根据自己需要配置 mac 地址和 自己需要访问的IP

使用Dnsmasq配置DNS服务

目的:将软路由系统作为 DNS 服务器,自定义域名homeserver.lan映射到IP 192.168.11.11

iStore --> 网络 --> DHCP/DNS --> 主机名映射

命令行方式:

代码语言:javascript
复制
uci add dhcp domain 
uci set dhcp.@domain[-1].name='homeserver.lan'
uci set dhcp.@domain[-1].ip='192.168.11.11' #需要访问的服务IP
uci commit dhcp 

配置防火墙拦截 DNS 请求

目的是确保所有客户端的 DNS 请求都经过路由网关进行拦截,除非客户端手动配置 DNS 服务为路由网关 192.168.11.12。

iStore --> 网络 --> 防火墙 --> 端口转发

命令行方式:

代码语言:javascript
复制
uci add firewall redirect 
uci set firewall.@redirect[-1].target='DNAT'
uci set firewall.@redirect[-1].name='Redirect DNS' #自定义规则名称
uci add_list firewall.@redirect[-1].proto='udp'
uci set firewall.@redirect[-1].src='lan'
uci set firewall.@redirect[-1].src_dport='53'
uci set firewall.@redirect[-1].dest_ip='192.168.11.12' # 旁路由网关IP
uci set firewall.@redirect[-1].dest_port='53'
/etc/init.d/firewall restart

ping检测

使用ping命令检查连通性

代码语言:javascript
复制
% ping  homeserver.lan          
PING homeserver.lan (192.168.11.11): 56 data bytes
64 bytes from 192.168.11.11: icmp_seq=0 ttl=64 time=3.906 ms
64 bytes from 192.168.11.11: icmp_seq=1 ttl=64 time=4.432 ms
64 bytes from 192.168.11.11: icmp_seq=2 ttl=64 time=9.283 ms
64 bytes from 192.168.11.11: icmp_seq=3 ttl=64 time=4.778 ms

如果没通,可以清下DNS缓存

mac下清理DNS缓存信息

代码语言:javascript
复制
sudo killall -HUP mDNSResponder
sudo dscacheutil -flushcache

自定义域名注意

.local域名在 Mac、Linux、Windows系统下有特殊作用,就算DNS服务器配置了域名映射也无法正常使用。客户端可以nslookup命令查看DNS服务器配置的.local域名,但是无法完成网络请求。因为有mDNS协议的存在,.local会独立于其他域名进行处理。 如果你一定要使用.local,请遵循mDNS协议配置~ 见 利用mDNS协议使用局域网local域名服务

参考: https://cloud.tencent.com/developer/article/1683190

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • iStore软路由自定义DNS服务
    • 静态IP配置
      • 使用Dnsmasq配置DNS服务
        • 配置防火墙拦截 DNS 请求
          • ping检测
            • 自定义域名注意
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档