V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
milkpuff
V2EX  ›  DNS

dnsmasq 配合 smartdns 过滤 ipv6 方案

  •  
  •   milkpuff · 2023-02-01 01:45:42 +08:00 · 1880 次点击
    这是一个创建于 668 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目的

    • 内网机器远程需求,正常开启 ipv6
    • 翻墙代理不支持 ipv6 ,需要国外域名只解析 ipv4 ,同时希望国内域名支持 ipv6

    方式

    • 国内域名由 dnsmasq 分流到运营商解析,返回 ipv4 和 ipv6
    • 非国内域名由 dnsmasq 分流到 smartdns; smartdns 再到 8.8.8.8 解析,过滤 ipv6 ,返回 ipv4 给 dnsmasq ;此处用到 smartdns 的过滤 ipv6 功能,只用 dnsmasq 好像不能实现。
    • 分流参考 https://github.com/felixonmars/dnsmasq-china-list

    效果

    youtube 解析只有 ipv4 ,优酷解析 ipv4 、ipv6 都有

    PS C:\> nslookup youtube.com
    Address:  192.168.50.1
    
    非权威应答:
    名称:    youtube.com
    Address:  172.217.163.46
    
    PS C:\> nslookup youku.com
    Address:  192.168.50.1
    
    非权威应答:
    名称:    youku.com
    Addresses:  2408:4001:f00::1af
              2408:4001:f10::8
              2408:4001:f00::3a
              2408:4001:f10::fd
              106.11.43.107
    
    11 条回复    2023-02-08 14:02:38 +08:00
    ToDyZHu
        1
    ToDyZHu  
       2023-02-01 08:57:46 +08:00
    这个在 smartdns 该怎么设置呢
    villivateur
        2
    villivateur  
       2023-02-01 09:15:08 +08:00
    请教一下,你知道怎么在 openwrt 的 luci 界面配置 smartdns 过滤 AAAA 记录吗?
    villivateur
        3
    villivateur  
       2023-02-01 09:19:52 +08:00
    @villivateur 自己研究出来了,勾选 Force AAAA SOA 即可,感谢分享
    creedowl
        4
    creedowl  
       2023-02-01 10:20:21 +08:00   ❤️ 1
    我用 open clash 配合 meta 内核,dns 分流支持 geo site ,国外域名通过 dns fallback 到 smartdns ,走 cloudflare DOH 解析 v4 only ,国内域名正常解析 v4 v6
    milkpuff
        5
    milkpuff  
    OP
       2023-02-01 11:01:54 +08:00
    @ToDyZHu smartdns 参考配置文档,端口避开 53 ,如 5353 ,force-AAAA-SOA yes ;/etc/dnsmasq.conf 设置 server=127.0.0.1#5353
    ToDyZHu
        6
    ToDyZHu  
       2023-02-01 11:15:30 +08:00
    @milkpuff 为什么不直接用 smartdns 接管 dnsmasq 呢 我记得 smartdns 是可以分组的吧 openclash 那里的自定义 dns fallback 到第二组并丢弃 ipv6 可以吗
    milkpuff
        7
    milkpuff  
    OP
       2023-02-01 13:09:23 +08:00
    @ToDyZHu smartdns 只有一个全局过滤 ipv6 的开关:force-AAAA-SOA ,似乎不能按分组丢弃 ipv6.
    bjzhou1990
        8
    bjzhou1990  
       2023-02-01 15:30:13 +08:00   ❤️ 1
    建议 mosdns ,有对应的规则
    shamburger
        9
    shamburger  
       2023-02-01 22:51:58 +08:00
    dnsmasq 可以强制指定 AAAA 解析的地址。如果指定为 `::` 则可以实现只使用 A 解析的效果。
    ```
    server=/google.com/8.8.8.8
    address=/google.com/::
    ```
    D7S
        10
    D7S  
       2023-02-08 09:58:23 +08:00
    @creedowl meta 不是自带 dns? 为何还需要再套一个 smartdns ,直接用 meta 的 dns 会不会更方便?

    不过 meta 的分流有点问题,像 jd 有时就会连线到国际版 jd 。
    creedowl
        11
    creedowl  
       2023-02-08 14:02:38 +08:00
    @D7S 因为我要设置国外不解析 v6 ,meta 应该是没办法配置的,所以用 smartdns 再过滤一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2594 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 01:40 · PVG 09:40 · LAX 17:40 · JFK 20:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.