惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
博客园 - 聂微东
J
Java Code Geeks
Engineering at Meta
Engineering at Meta
Jina AI
Jina AI
D
Docker
B
Blog
S
SegmentFault 最新的问题
宝玉的分享
宝玉的分享
D
DataBreaches.Net
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Y
Y Combinator Blog
N
Netflix TechBlog - Medium
月光博客
月光博客
F
Fortinet All Blogs
爱范儿
爱范儿
H
Help Net Security
腾讯CDC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
WordPress大学
WordPress大学
The Cloudflare Blog
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
U
Unit 42

Allen Hua 的网络博客

由于 Linux 桌面没有一个好用的天气程序就写了一个跨平台的CheckitoutWeather 给 caesium-image-compressor 图片压缩程序构建了 Linux AppImage v2.8.5 最新版 debian13(debian trixie)安装了nvidia闭源驱动后从x11切换到wayland的方法 山间摩旅追风,偶遇一场绚烂晚霞 最近使用debian系统的一些心得 机械革命无界14Pro笔记本debian forky成功驱动内置扬声器和麦克风 记录 typecho 1.2.0 升级到 1.3.0 过程 开发了一款openwrt插件:文本剪贴板 解决机械革命笔记本内屏高刷240Hz闪屏问题 使用 Java 写了一个局域网端口扫描器 - Allen Hua 的网络博客 openwrt使用外置根extroot机制扩展根分区大小 - Allen Hua 的网络博客 将机场ss节点批量转换成ss字符串链接批量添加到passwall - Allen Hua 的网络博客 给机械革命钛钽plus换屏:NY2换成NZ2 - Allen Hua 的网络博客 记录一次pve宿主机和上面的debian虚机无故down机事件 - Allen Hua 的网络博客 给图床部署cdn腾讯云的edgeone并排查Cache-Control max-age 3600的问题 - Allen Hua 的网络博客 从高山草甸到徽派古村:武功山反穿与皖浙赣自驾行记 - Allen Hua 的网络博客 增程器就是充电宝?别被忽悠了 - Allen Hua 的网络博客 浦口龙虎巷扫街,记录人间真实 博客图片压缩方案更新|AVIF|WebP|MozJPEG|标准JPEG Windows 电脑使用 Obs Studio 录制各个网站视频/桌面画面教程 为typecho博客添加latex支持 新能源汽车之纯电车使用交流慢充和直流快充的充电损耗对比 2025年3月更新全国5A景区名录 2025最新查看小米/红米手机电池健康度和循环次数方法 完美解决 seafile FILE_SERVER_ROOT 配置导致的内网外网不能同时访问和上传下载的问题 纯css实现typecho博客文章文字spoiler剧透效果 我对Typecho Facile主题的一些修改,图片懒加载优化,样式定制 2024年8月我的宜昌 - 重庆 - 川西小环线自驾旅行分享 2022年打卡南京市区人防工程纳凉点 2024年带着A7C2+腾龙28-200 再次来到红山森林动物园
Clash Transparent Proxy 透明代理/网关 在 Linux 设备上的实...
Allen Hua · 2021-11-07 · via Allen Hua 的网络博客
阅读量:13244

warning: 这篇文章距离上次修改已过1661天,其中的内容可能已经有所变动。

最近折腾 Clash 透明代理/网关,记录一些心路历程,也分享一些我收集到的互联网上关于透明代理写得很好的博客文章。

我的目标是在家里局域网中某台 7x24h working 的 Linux 设备上安装 Clash Core(或者 Clash Premium),然后主路由 Openwrt 修改 lan dhcp config,将 dhcp default gateway 和 default dns 发 offer 给请求 wifi 连接的局域网设备,这样就不需要设备主动修改网关和 DNS(指向透明代理设备的 IP)。为什么不直接使用 OpenWRT 的 Passwall、OpenClash、Shadowsocks R Plus + 这些?因为我用起来总有些问题……

注意:其他普通路由器固件可能不支持修改 dhcp 默认的 gateway 和 dns

本文大概分四个部分:如何安装部署、openwrt 指定客户端获得的默认网关和 dns、透明代理设备的静态 ip 问题、文章分享

一、如何安装部署 Clash 透明代理

关于如何安装部署 clash 透明代理,网上文章很多,后面我也会贴上很多链接。在此非常推荐这个:Clash-Linux-折腾笔记

二、openwrt 的 dhcp 指定客户端获得的网关和 dns 地址

我分享一下 openwrt 如何设置 dhcp 下发的默认 gateway 和 dns, luci 访问到 http://YOUR_ROUTER_LAN_IP:PORT/cgi-bin/luci/admin/network/network/lan,将高级设置里的 dhcp 选项设置如下

20211107111450.png

或者 ssh 到 openwrt 设备,通过修改 /etc/config/dhcp 也能达到效果

config dhcp 'lan'
    option interface 'lan'
    option start '100'
    option limit '150'
    option leasetime '12h'
    option ra_slaac '1'
    list ra_flags 'managed-config'
    list ra_flags 'other-config'
    list dhcp_option '3,10.10.10.4'
    list dhcp_option '6,10.10.10.4'

在 config dhcp 'lan' 下新增如下两行即可。这样指定后重启网络 /etc/init.d/network restart 然后让设备 renew dhcp lease 或者“忘记网络”重新连接。重新连接上之后设备获得的网关和 dns 就是透明代理设备的 IP 10.10.10.4 了。否则会是 openwrt lan 接口的 ip(比如我的是 10.10.10.1

list dhcp_option '3,10.10.10.4'
list dhcp_option '6,10.10.10.4'

关于 dhcp option 请参考 此帖

option 号 含义
3 设置网关地址选项
6 设置DNS服务器地址选项

四、透明代理设备的静态 ip 问题

可以看到 Clash-Linux-折腾笔记 中是强制指定了客户端使用 static ip,但是通过 openwrt 的 /etc/config/dhcp 也可以做到。

config host
    option name 't400'
    option dns '1'
    option mac '00:1c:25:a2:54:c6'
    option ip '10.10.10.3'
    option leasetime 'infinite'

config host
    option name 'n1-armbian'
    option dns '1'
    option mac 'fc:7c:02:4e:69:f4'
    option ip '10.10.10.4'
    option leasetime 'infinite'

leasetime 指定为 infinite 无限期

上面的设备 n1-armbian 就是我的透明代理设备。

然后看看 n1-armbian 的网络配置,文件 /etc/network/interfaces

source /etc/network/interfaces.d/*

#auto eth0
allow-hotplug eth0
no-auto-down eth0
iface eth0 inet dhcp
hwaddress fc:7c:02:4e:69:f4

# Local loopback
auto lo
iface lo inet loopback

四、文章分享

感谢各位大佬的无私分享!!! 这里有很多写得深度的文章,读来受益匪浅。

文章最后:Clash 是个优秀的项目,衍生出来众多平台的版本,感谢开发者们的辛勤付出。

至于 clash tun mode,以及结合其他 dns 转发器之类的实践,暂时不做了,因为现在我的网络已满足当下的需求。