nzhl

nzhl

V2EX 第 450689 号会员,加入于 2019-11-02 12:11:41 +08:00
nzhl 最近回复了
支持下, 看看代码学学 rust
137 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
那应该是下面一条 非闭环的走 1970566510, 然后

> ip route show table 1970566510
default dev utun proto unspec

一旦走到 1970566510 就相当于被 clash 接管了, 这个理解没错把兄弟 @wangyu17455
137 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
感谢兄弟 有点懂了 我好好领悟下
137 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
@wangyu17455 兄弟 我试了下 ip rule

> ip rule
0: from all lookup local
9500: from all to 198.18.0.0/16 lookup 1970566510
9510: from all ipproto icmp goto 9560
9520: not from all dport 53 lookup main suppress_prefixlength 0
9530: not from all iif lo lookup 1970566510
9540: from 0.0.0.0 iif lo uidrange 0-4294967294 lookup 1970566510
9550: from 198.18.0.1 iif lo uidrange 0-4294967294 lookup 1970566510
9560: from all nop
32766: from all lookup main
32767: from all lookup default

看着

9520: not from all dport 53 lookup main suppress_prefixlength 0
这一行有点像在拦截 53 ?
137 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
接上层,我其实好奇的就是这个对 DNS 的拦截是怎么做的, 因为 TUN 是 premium 的功能,只是功能开源了但是代码没开源。

我理解要拦截 DNS 有几个做法:
1. cat /etc/hosts

# Standard host addresses
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# This host address
127.0.1.1 nzhl-manjaro


2. cat /etc/resolv.conf

# Generated by NetworkManager
nameserver 192.168.50.1 # 这是我的华硕路由器


3. 根据 5 楼的说法以及看他配置似乎确实是在监听 53 端口, 但是首先我发现 53 端口啥也没有

> sudo netstat -tlunp|grep 53
tcp 0 0 127.0.0.1:53000 0.0.0.0:* LISTEN 586/clash-core-serv
udp 0 0 0.0.0.0:34622 0.0.0.0:* 537/avahi-daemon: r
udp 0 0 224.0.0.251:5353 0.0.0.0:* 405557/chrome --ena
udp 0 0 224.0.0.251:5353 0.0.0.0:* 405557/chrome --ena
udp 0 0 224.0.0.251:5353 0.0.0.0:* 405599/chrome --typ
udp 0 0 224.0.0.251:5353 0.0.0.0:* 405599/chrome --typ
udp 0 0 0.0.0.0:5353 0.0.0.0:* 537/avahi-daemon: r
udp6 0 0 :::51972 :::* 537/avahi-daemon: r
udp6 0 0 :::5353 :::* 537/avahi-daemon: r
137 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
@wangyu17455 问题从 routing table 来看, 只有已经经过了 DNS 的劫持的流量 (198.18.0.0/16) 才会流入 clash 创建的网卡

下面是关闭然后开启 tun 模式系统路由表的变化, 只是新增了一条
198.18.0.0/16 dev utun proto kernel scope link src 198.18.0.1
看上去这条记录只拦截 198.18 网段, 应该在这之前有一层 DNS 劫持把流量导入到了这个网段

> ip route
// tun mode disable
default via 192.168.50.1 dev wlo1 proto dhcp src 192.168.50.132 metric 20600
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-befa72e4dba9 proto kernel scope link src 172.18.0.1 linkdown
192.168.50.0/24 dev wlo1 proto kernel scope link src 192.168.50.132 metric 600
> ip route
# tun mode enable
default via 192.168.50.1 dev wlo1 proto dhcp src 192.168.50.132 metric 20600
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-befa72e4dba9 proto kernel scope link src 172.18.0.1 linkdown
192.168.50.0/24 dev wlo1 proto kernel scope link src 192.168.50.132 metric 600
198.18.0.0/16 dev utun proto kernel scope link src 198.18.0.1
138 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
@aragakiyuii 为啥监听 0000 53 能起作用 不是默认会让访问 etc resolv 文件里面指定的 dns server 吗
138 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
@seers 没 我看了 路由表里只有被劫持后的 198 网断
138 天前
回复了 nzhl 创建的主题 DNS 在 Linux 上开 clash tun 模式 clash 是怎么劫持 dns 的
@aragakiyuii 有没有更具体的 就是他是怎么监听到 dns 请求的
306 天前
回复了 Features 创建的主题 加密货币 USDT 转 RMB 最稳妥的办法是什么?
兄弟怎么解决的~
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   1727 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 20ms · UTC 13:08 · PVG 21:08 · LAX 05:08 · JFK 08:08
Developed with CodeLauncher
♥ Do have faith in what you're doing.