NipGeihou's blog NipGeihou's blog
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档

NipGeihou

我见青山多妩媚,料青山见我应如是
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档
  • Linux

  • Docker

  • 云原生

  • Kubernetes

  • KubeSphere

  • K3S

  • 笔记

    • 基于KtConnect实现本地与kubernetes集群互通
    • 基于Wireguard实现本地与kubernetes集群互通
    • Kubesphere问题总结
    • SpringBoot应用存活探针
    • DevOps - IDEA与Docker实现CI
    • 下一代CI工具 - Tekton
    • 基于Clash.Meta实现的流量分离
      • 前置知识
        • DNS
        • 分流规则
      • 配置文件
      • 遇到的坑
      • 参考
    • Windows命令-route路由表
    • 基于acme.sh的证书分发
    • 基于Nginx的内网域名管理
    • 基于Cloudflare-Zero-Trust的内网穿透
    • 基于rclone的跨云对象存储迁移
    • 基于DNS区域解析分流国内外CDN
    • 年轻人的第一台服务器(D1581)
    • IPMI笔记
    • ipmitool笔记
    • iSCSI服务搭建
    • 基于WireGuard实现的云组网
    • 基于Tailscale实现的云组网
  • PVE

  • 维修

  • DevOps

  • 云服务

  • 路由器

  • Hyper-V

  • Windows

  • macOS

  • 运维
  • 笔记
NipGeihou
2023-08-11
目录

基于Clash.Meta实现的流量分离

# 前置知识

# DNS

redir-host:

fake-ip:

选择

现在主流的选择似乎是 fake-ip ,这种模式在全局 DNS 走代理查询的情况下,相较于 redir-host 可以减少一个 DNS 查询的延迟,但实际上浏览器、操作系统都有 DNS 缓存,因此通常只能减少首次访问时延迟,但因此带来的弊端就很困扰:

  • 无法 ping 得准确延迟:在开发中难免需要 ping 一些 ip 或域名,而返回的 fake-ip 毫无帮助

    • PS:在 tun 模式下使用 redir-host,显示的延迟仍然是 < 1ms,因为 ping 的实际是 tun 网卡
  • 全局模式体验不好:国内购物网站全变国际版

一些优化

  • Windows:策略组 - 计算机配置 - 管理模板 - 网络 - DNS 客户端 - 禁用智能多宿主名称解析,启用
    • 不然会 Windows 会向所有网络发出并行的 DNS 查询,从而导致 DNS 泄露
    • 实践发现:tun 模式下仍然会泄露,需手动指定一个不可用的 DNS 如127.0.0.1 给出口网卡
  • 关闭 QUIC: chrome://flags - Experimental QUIC protocol ,Disable
    • Clash 暂不处理 UDP 域名,而国际互联网网站都大多默认使用 QUIC,从而导致 DNS 泄露

# 分流规则

# 配置文件

# 遇到的坑

在使用 OpenWrt 时发现域名 abc.com 解析到外网的子域名可以正常获取 ip,解析到内网的无法获取,使用在 oepnwrt 的终端执行 nslookup 内网.abc.com 发现无法正常返回。

开启 DHCP/DNS-记录查询日志 发现如下信息

Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 7 192.168.1.104/59415 query[A] 内网.abc.com from 192.168.1.104
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 7 192.168.1.104/59415 forwarded 内网.abc.com to 127.0.0.1#7874
Sat Oct 14 10:52:15 2023 daemon.warn dnsmasq[1]: possible DNS-rebind attack detected: 内网.abc.com
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 8 192.168.1.104/59416 query[AAAA] 内网.abc.com from 192.168.1.104
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 8 192.168.1.104/59416 forwarded 内网.abc.com to 127.0.0.1#7874
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 8 192.168.1.104/59416 reply 内网.abc.com is NODATA-IPv6
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 9 192.168.1.104/59417 query[A] 内网.abc.com from 192.168.1.104
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 9 192.168.1.104/59417 forwarded 内网.abc.com to 127.0.0.1#7874
Sat Oct 14 10:52:15 2023 daemon.warn dnsmasq[1]: possible DNS-rebind attack detected: 内网.abc.com
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 10 192.168.1.104/59418 query[AAAA] 内网.abc.com from 192.168.1.104
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 10 192.168.1.104/59418 forwarded 内网.abc.com to 127.0.0.1#7874
Sat Oct 14 10:52:15 2023 daemon.info dnsmasq[1]: 10 192.168.1.104/59418 reply 内网.abc.com is NODATA-IPv6

询问 ChatGPT 得到的回复:

这些日志表示有一个来自 IP 地址为 192.168.1.104 的主机对 内网.abc.com 域名进行了查询,并且 DNS 服务器在处理这些查询时检测到可能的 DNS 重新绑定攻击。该攻击可能会导致恶意代码通过 DNS 查询进行传播。因此,DNS 服务器发送了警告消息。最后,对于 内网.abc.com 域名的 AAAA 记录查询,DNS 服务器返回了 NODATA-IPv6,表示找不到 IPv6 地址。

通过在 google 搜索 possible DNS-rebind attack detected "clash" 找到参考网址,得知是 DHCP/DNS-重绑定保护 导致的问题,关闭后应用配置解决。

参考:FakeIP 启用后,日志里有 IP,但是 dig 或 nslookup 没有结果,浏览器中也提示找不到 IP,打不开对应网站・Issue #475・SagerNet/sing-box (opens new window)

# 参考

  • 浅谈在代理环境中的 DNS 解析行为 | Sukka's Blog (opens new window)
上次更新: 2023/12/26, 16:51:58
下一代CI工具 - Tekton
Windows命令-route路由表

← 下一代CI工具 - Tekton Windows命令-route路由表→

最近更新
01
iSCSI服务搭建
05-10
02
磁盘管理与文件系统
05-02
03
网络测试 - iperf3
05-02
更多文章>
Theme by Vdoing | Copyright © 2018-2025 NipGeihou | 友情链接
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式