免费翻墙freefq.com

  移动端← | →PC电脑端
您当前的位置:首页 > 网络翻墙技巧

用Firewalld + systemd.slice + redir實現TCP + UDP透明代理

时间:2021-06-15  来源:matters  作者: 0 条评论

现在网上已经有不少用 iptables 或 nftables 实现透明代理(Tproxy)的例子了。绝大多数关于透明代理的教程都是通过 iptables 实现的,也有少量使 用新一代的 nftables 内核防火墙前端来实现。然而,消费级电脑上通常会装有更简化的防火墙程序,例如 Fedora/CentOS/SUSE 自带的 Firewalld,或 Ubuntu 的 UFW。在用这些简化前端的同时,直接操作 nftables 和 iptables 的话可能会造成冲突,更好的解法是全部工作都由 firewalld/ufw 来做。FDg免费翻墙网

本文就以 firewalld 为例,用它的 direct rules 来实现透明代理(没错,firewalld 并不提供关于透明代理的抽象,所以并不比 iptables 有优势)。FDg免费翻墙网

想要实现的效果

  • TCP 和 UDP 流量自动转给 Clash(或 shadowsocks 等)
  • Clash 本身不会把流量转发给自己
  • 可以让某些 程序 不转发给 clash,直接联网

Get started

先来设置变量,指向 clash 的 redir-portFDg免费翻墙网

export proxy_port=7892 # 按你 clash 的设置修改

接着设置 firewalld 和 ip route。 Firewalld 的 direct rules 语法几乎等同于 iptables(因为实际上就是调用 iptables 来执行 direct rules)。所以这里直接照抄 systemd.slice + iptables + redir:如何在 Arch Linux 上配置透明代理 的规则,稍有修改:FDg免费翻墙网

#tcp
sudo firewall-cmd --direct --add-chain ipv4 nat clash
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -m cgroup --path "clash.slice" -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 0.0.0.0/8 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 10.0.0.0/8 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 127.0.0.0/8 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 169.254.0.0/16 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 172.16.0.0/12 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 192.168.0.0/16 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 224.0.0.0/4 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -d 240.0.0.0/4 -j RETURN

sudo firewall-cmd --direct --add-rule ipv4 nat clash 2 -p tcp -j REDIRECT --to-port "$proxy_port"

sudo firewall-cmd --direct --add-rule ipv4 nat OUTPUT 1 -p tcp -j clash

#udp
sudo ip rule add fwmark 1 table 100
sudo ip route add local default dev lo table 100
sudo firewall-cmd --direct --add-chain ipv4 mangle clash
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -m cgroup --path "clash.slice" -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 0.0.0.0/8 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 10.0.0.0/8 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 127.0.0.0/8 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 169.254.0.0/16 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 172.16.0.0/12 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 192.168.0.0/16 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 224.0.0.0/4 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 1 -d 240.0.0.0/4 -j RETURN
sudo firewall-cmd --direct --add-rule ipv4 mangle clash 2 -p udp -j TPROXY --on-port "$proxy_port" --tproxy-mark 1
sudo firewall-cmd --direct --add-rule ipv4 mangle OUTPUT 0 -p udp -j clash # 这里可能有错(`failed: iptables-restore: line 3 failed`),欢迎指正
sudo firewall-cmd --direct --add-chain ipv4 nat CLASH_DNS
sudo firewall-cmd --direct --remove-rules ipv4 nat CLASH_DNS 
sudo firewall-cmd --direct --add-rule ipv4 nat CLASH_DNS 1 -p udp -j REDIRECT --to-port 1053
sudo firewall-cmd --direct --add-rule ipv4 nat OUTPUT 0 -p udp --dport 53 -j CLASH_DNS

其中,sudo firewall-cmd --direct --add-rule ipv4 nat clash 1 -m cgroup --path "clash.slice" -j RETURN 将放到 clash.slice 下的 service 给绕过 clash 了。FDg免费翻墙网

Clash 要以 systemd unit 的形式 来运行。为了让 clash 不把自己的流量循环转回给自己,给它的 unit 分配给 clash.sliceFDg免费翻墙网

[Service]
Slice=clash.slice

其它不想走 clash 的程序也可以以类似方式分配给 clash.slice。FDg免费翻墙网

 

IPFS 官方中文 Wikipedia 使用指南

 

https://www.v2ex.com/t/764965#reply11FDg免费翻墙网

 FDg免费翻墙网

什么是 IPFS ?

星际文件系统InterPlanetary File System,缩写IPFS)是一个旨在创建持久且分布式存储和共享文件的网络传输协议。它是一种内容可寻址对等超媒体分发协议。在 IPFS 网络中的节点将构成一个分布式文件系统。它是一个开放源代码项目,自 2014 年开始由Protocol Labs在开源社区的帮助下发展。其最初由Juan Benet设计。FDg免费翻墙网

用最简单的话来说 IPFS 是个 P2P 网络,和我们日常可能会使用的 BT 下载的原理类似,但是 IPFS 相比于 BT 来说做了非常多的改进,使得 IPFS 的性能和扩展性都有很大的提升。FDg免费翻墙网

在 IPFS 网络中每一个文件都有一个独特的 CID,当你把一个文件放入 IPFS 网络中,其他的用户就可以通过 CID 来获取到这个文件而不必考虑这个文件存放在何处。此外任何用户可以选择 pin 住一个文件的 CID,从而帮助 IPFS 网络长期的保存某个文件。FDg免费翻墙网

什么是 Distributed Wikipedia Mirror ?

Distributed Wikipedia Mirror 是 IPFS 官方团队维护的一个项目。这个项目旨在将 Wikipedia 带入 IPFS 网络,以及最终构建出一个纯分布式的 Wikipedia 。目前该项目已经提供了:英语、土耳其语、缅甸语和中文的 Wikipedia 镜像。FDg免费翻墙网

如何使用?

本文将介绍如何使用中文版的 Wikipedia IPFS 镜像。FDg免费翻墙网

镜像的地址为:FDg免费翻墙网

请注意本项目的 CID 地址会随着分发的 Wikipedia 镜像版本更新而改变,你可以通过访问此地址或者使用 ipfs name resolve zh.wikipedia-on-ipfs.org 获取到最新的 CIDFDg免费翻墙网

我接下来会介绍 3 种不同的方式来访问本镜像。FDg免费翻墙网


公共网关

公共网关是目前访问 IPFS 网络上内容最简单的方式,但这也是最容易被封锁的方式。我将以官方的网关为例来演示如何使用公共网关来访问 IPFS 网络上的内容。FDg免费翻墙网

官方公共网关地址: https://ipfs.ioFDg免费翻墙网

使用 CID 访问镜像

如果你决定使用 CID 地址来访问镜像的话,你需要在浏览器地址栏按照如下格式输入:FDg免费翻墙网

https://ipfs.io/ipfs/<CID>

在我们的例子里就是:FDg免费翻墙网

https://ipfs.io/ipfs/bafybeiazgazbrj6qprr4y5hx277u4g2r5nzgo3jnxkhqx56doxdqrzms6y

使用 DNSLink 地址访问

如果你决定使用 DNSLink 地址来访问镜像的话,你需要在浏览器地址栏按照如下格式输入:FDg免费翻墙网

https://ipfs.io/ipns/<DNSLink>

在我们的例子里就是:FDg免费翻墙网

https://ipfs.io/ipns/zh.wikipedia-on-ipfs.org

Brave 浏览器

如果你在使用最新版的 Brave 浏览器,你可以直接使用 Brave 内置的 IPFS 节点来访问 IPFS 网络上的内容。你在第一次使用 Brave 浏览器访问 IPFS 内容时,Brave 浏览器可能会询问你是否要启用本地 IPFS 节点,建议选择启用,如果没有启用,Brave 会自动使用公共网关来访问 IPFS 网络上的内容。此外你可以通过 Brave 设置页面中 IPFS 相关的选项和内置的 IPFS-Companion 插件中的选项来调整 IPFS 节点类型。FDg免费翻墙网

使用 CID 访问镜像

如果你决定使用 CID 地址来访问镜像的话,你需要在浏览器地址栏按照如下格式输入:FDg免费翻墙网

ipfs://<CID>

在我们的例子里就是:FDg免费翻墙网

ipfs://bafybeiazgazbrj6qprr4y5hx277u4g2r5nzgo3jnxkhqx56doxdqrzms6y

使用 DNSLink 地址访问

如果你决定使用 DNSLink 地址来访问镜像的话,你需要在浏览器地址栏按照如下格式输入:FDg免费翻墙网

ipns://<DNSLink>

在我们的例子里就是:FDg免费翻墙网

ipns://zh.wikipedia-on-ipfs.org

IPFS Desktop

IPFS Desktop 对于是目前普通用户使用本地 IPFS 最容易的方法,你可以在这里下载最新版的 IPFS Desktop 。在启动成功之后,IPFS-Dekstop 会默认在你本地地址的 8080 端口启动一个网关服务器,之后我们就可以使用这个本地的网关服务来访问 IPFS 网络上的内容了。FDg免费翻墙网

当然你可以通过修改 IPFS-Desktop 中的 Gateway 项,来修改默认的端口地址。FDg免费翻墙网

使用 CID 访问镜像

如果你决定使用 CID 地址来访问镜像的话,你需要在浏览器地址栏按照如下格式输入:FDg免费翻墙网

http://127.0.0.1:<port>/ipfs/<CID>

在我们的例子里就是:FDg免费翻墙网

http://127.0.0.1:8080/ipfs/bafybeiazgazbrj6qprr4y5hx277u4g2r5nzgo3jnxkhqx56doxdqrzms6y

使用 DNSLink 地址访问

如果你决定使用 DNSLink 地址来访问镜像的话,你需要在浏览器地址栏按照如下格式输入:FDg免费翻墙网

http://127.0.0.1:<port>/ipns/<DNSLink>

在我们的例子里就是:FDg免费翻墙网

http://127.0.0.1:8080/ipns/zh.wikipedia-on-ipfs.org
来自matters

 

返回→:首页 > 网络翻墙技巧

相关文章

  • 2021-05-28免费TG代理分享
  • 艾可云VPN免费试用 - V2AKY:翻墙梯子高速稳定代理科学
  • 达尔文VPN-免费,快速,安全的VPN和代理
  • 最新免费在线代理推荐
  • winXray-全能型的科学上网代理客户端 | 支持SS/SSR/V2
  • 使用Docker快速搭建Telegram專用代理MTProxy-Go
  • “性代理人”如何帮以色列伤兵康复?
  • 快代理免费试用
  • 2021年4月9日TG免费代理分享
  • 2021年4月2日TG免费代理分享
  • 栏目更新

  • Linux系统翻墙方法大全
  • 使用Clash relay拯救被封VPS
  • 永久免费VPN,还不限流量,直接把付
  • 2024永久免费翻墙加速器app梯子
  • 2024超简单免费VPN:全新翻墙软件H
  • WhatsApp翻墙技巧
  • 如何生成GPT-4 arkose_token?
  • 2023年谷歌镜像更新
  • 不翻墙上github的方法
  • 惊曝光猫内置反诈插件
  • 搭建一个nostr中继服务
  • 人人都能看懂的旁路由入门指南
  • 旁路由的原理与配置一文通
  • 使用Yggdrasil进行远程访问
  • 谷歌将Outline开源项目代码提供给开
  • 家庭网络改造记录:旁路由
  • 信息茧房自救指南
  • 备用翻墙方案:eSIM
  • Warp: 一种安全的跨平台文件共享应
  • T-Mobile原生手机卡购买激活教程
  • 栏目热门

  • 解决OpenAI和ChatGPT的API无法访问
  • BT种子搜索网站和磁力链接搜索引擎
  • Hardening Android for Security A
  • ShadowSocks影梭不完全指南
  • 将你的树莓派打造成一个Tor中继节点
  • 全球免费DNS集合
  • Android Pie私人DNS简介及使用
  • TP-Link路由器内建VPN助翻墙
  • 免费拥有一个美国的手机号码
  • 通用的全站镜像反向代理zmirror
  • 墙外新闻

  • 行星撞地球?
  • 从“公知”到出走海外的独立媒体人
  • 间谍成蕾回忆录
  • 波音客机吹哨者的质疑
  • 为什么泡水后只有手指脚趾皮肤会起
  • 东方航空出事了
  • 如何在炎炎夏日安眠?
  • 对人类也过敏的人
  • 动荡的24小时
  • 极端吃播为什么被抵制?
  • 读者文摘

  • 我看中国中东外交中立原则
  • 中国台湾“大罢免”完全扫描
  • 中国人口多少最合适?
  • 赖清德「團結十講」第一講"国家"(全
  • 千年的魔盒
  • 特朗普需要一场速战速决的战争
  • 祖国统一能不能靠他们?
  • 今天台独最大的隐患是什么?
  • 判断小孩数学能力高低的坎
  • 海外华人子弟有没有必要学中文?
  • 欢迎评论:免登录,输入验证码即可匿名评论 共有0条评论
    用户名: 密码:
    验证码: 匿名发表
    搜索:
      移动端← | →PC电脑端

    免费翻墙网freefq.com

    关于本站 | 联系我们 | 免责声明 | 赞助本站 | 网站地图 | 浏览建议

    Powered by 免费翻墙网freefq.com  © 2014-2025 免费翻墙软件网——提供最全的免费翻墙软件

    管理员精中特别提醒:本网站域名、主机和管理员都在美国,且本站内容仅为非中国大陆网友服务。禁止中国大陆网友浏览本站!若中国大陆网友因错误操作打开本站网页,请立即关闭!中国大陆网友浏览本站存在法律风险,恳请立即关闭本站所有页面!对于您因浏览本站所遭遇的法律问题、安全问题和其他所有问题,本站均无法负责也概不负责。

    特别警告:本站推荐各种免费科学上网软件、app和方法,不建议各位网友购买收费账号或服务。若您因付费购买而遭遇骗局,没有得到想要的服务,请把苦水往自己肚子里咽,本站无法承担也概不承担任何责任!

    本站严正声明:各位翻墙的网友切勿将本站介绍的翻墙方法运用于违反当地法律法规的活动,本站对网友的遵纪守法行为表示支持,对网友的违法犯罪行为表示反对!

    网站管理员定居美国,因此本站所推荐的翻墙软件及翻墙方法都未经测试,发布仅供网友测试和参考,但你懂的——翻墙软件或方法随时有可能失效,因此本站信息具有极强时效性,想要更多有效免费翻墙方法敬请阅读本站最新信息,建议收藏本站!本站为纯粹技术网站,支持科学与民主,支持宗教信仰自由,反对恐怖主义、邪教、伪科学与专制,不支持或反对任何极端主义的政治观点或宗教信仰。有注明出处的信息均为转载文章,转载信息仅供参考,并不表明本站支持其观点或行为。未注明出处的信息为本站原创,转载时也请注明来自本站。

    鉴于各种免费翻墙软件甚至是收费翻墙软件可能存在的安全风险及个人隐私泄漏可能,本站提醒各位网友做好各方面的安全防护措施!本站无法对推荐的翻墙软件、应用或服务等进行全面而严格的安全测试,因此无法对其安全性做保证,无法对您因为安全问题或隐私泄漏等问题造成的任何损失承担任何责任!

    S. Grand Ave.,Suite 3910,Los Angeles,CA 90071

    知识共享许可协议
    本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。

      SSL site seal - click to verify