A cross-platform programmable network tool
GPL-3.0 License
contains some experimental features
--serverLog format
{"bytes":"2190","dst":"8.8.8.8:53","from":"34.105.110.232:49514","network":"tcp","time":"2024-02-26T09:56:12Z"}
{"bytes":"2237","dst":"8.8.8.8:53","from":"34.105.110.232:49331","network":"udp","time":"2024-02-26T09:57:12Z"}
You can tally traffic from --serverLog, for example by using a jb
script to sum up the traffic from the /tmp/brook.log
log file.
jb 'var s=0; read_file("/tmp/brook.log").trim().split("\n").map(v=>JSON.parse(v)).forEach(v=> s+= v.bytes ? parseInt(v.bytes) : 0); echo(s)'
We known this:
brook server -l :9999 -p hello
Then, create a file /root/any_name
:
server -l :9999 -p hello
We can run it like this:
brook /root/any_name
含一些实验性功能
--serverLog 格式如下
{"bytes":"2190","dst":"8.8.8.8:53","from":"34.105.110.232:49514","network":"tcp","time":"2024-02-26T09:56:12Z"}
{"bytes":"2237","dst":"8.8.8.8:53","from":"34.105.110.232:49331","network":"udp","time":"2024-02-26T09:57:12Z"}
可以从 --serverLog 里统计流量,比如用 jb 脚本统计 /tmp/brook.log
日志里的流量总和
jb 'var s=0; read_file("/tmp/brook.log").trim().split("\n").map(v=>JSON.parse(v)).forEach(v=> s+= v.bytes ? parseInt(v.bytes) : 0); echo(s)'
我们知道这样:
brook server -l :9999 -p hello
现在, 创建一个文件 /root/any_name
:
server -l :9999 -p hello
我们就可以这样:
brook /root/any_name
Published by txthinking 9 months ago
Published by txthinking over 1 year ago
Published by txthinking over 1 year ago
Published by txthinking over 1 year ago
--script same as GUI
Published by txthinking over 1 year ago
https://txthinking.github.io/brook/
Published by txthinking over 1 year ago
https://txthinking.github.io/brook/
Published by txthinking almost 2 years ago
🇬🇧 CLI Documentation 🇨🇳 CLI 文档
🇬🇧 GUI Documentation 🇨🇳 GUI 文档
Programmable
in_httprequest:
in_dnsquery:out:
brook module:
Published by txthinking almost 2 years ago
CLI
GUI
CLI
GUI
Published by txthinking almost 2 years ago
CLI
brook dns
renamed to brook dnsserveroverbrook
brook dnsserver
new subcommandbrook completion
new subcommandbrook markdown
new subcommandbrook manpage
new subcommandGUI
Capture me
new feature: You can try to see if your packet capture tool can capture this standard HTTP requestMITM
tentatively changed to strict address matching mode, and supports HTTP/2.0Everyone, every region, every time, you should follow this channel with the news here as the first news. Unless you are an adventurer.
ZH
命令行
brook dns
重命名为 brook dnsserveroverbrook
brook dnsserver
新子命令brook completion
新的子命令brook markdown
新的子命令brook manpage
新的子命令图形客户端
Capture me
新功能: 你可以试试你的抓包工具能不能捕获这个标准 HTTP 请求MITM
暂定改为严格匹配模式,并支持 HTTP/2.0每个人,每个地区,每个时间,你应该关注此 频道 以这里的消息作为第一消息。除非你是冒险者。
Published by txthinking about 2 years ago
CLI
brook connect:
--dialSocks5
--dialSocks5Username
--dialSocks5Password
brook testsocks5
brook testbrook
GUI
Please
Published by txthinking over 2 years ago
Published by txthinking over 2 years ago
Published by txthinking over 2 years ago
Brook v20220501 Released 正式发布
Brook
on AppStore&
Brook
Brook has been incubating for more than 2 years, and was open sourced in 2017, almost 8 years old. Brook changed its description from v20220501 to:
A cross-platform network tool designed for developers.
And this is the future growth direction of Brook.
Compared with products with full screen content at the beginning, prefer simple but powerful products. Brook tries to provide a simple but powerful commands, rules, and configurations, does not need to understand complex syntax, and tries not to create new syntax and new concepts. It's even that simple to use on a router.
Brook almost covers most of the network functions you need. At the same time, people who know programming can also write their own scripts. And since its development, the functions it provides are not only a network proxy tool, but also meet the needs of developers in various scenarios.
Brook provides a full platform CLI and GUI. We know that the network stack of each system itself is very different. Brook provides almost the same experience for all platforms. Features include almost all the features of similar free or paid products, and Brook is free on all platforms.
There are many other open source products and side projects around Brook. I believe they will provide different help to different students. It is believed that in the future development, the growth of Brook and its surrounding network tools will become a multi-functional and systematic network tool, and become a powerful tool for developers.
Brook 从孵化2年多,于2017年开源,差不多有8岁了。Brook 从 v20220501 开始更改其描述为:
一个为开发者设计的跨平台网络工具。
并此为 Brook 未来的成长方向。
相比较开场满屏内容的产品,更偏爱简洁但强大的产品。Brook 从命令到规则和配置都尽量提供了简单的格式,不需要理解复杂语法,也尽量不去创造语法和新概念。甚至在路由器上使用都那么简单。
她几乎涵盖了大部分你需要的网络功能。同时对于懂编程的人员也可以自己写脚本。并且发展至今,她提供的功能已不仅仅是一个网络代理工具了,还可以满足开发人员在多种场景的使用需求。
Brook 提供了全平台 CLI 和 GUI,我们知道各个系统本身的网络栈有很大差别,Brook 针对所有平台提供了几乎相同的体验。功能几乎包含了同类免费或收费产品的功能,并且 Brook 全平台免费。
围绕着 Brook 也产生很多其他开源产品和 Side Projects。相信她们都会对不同的同学提供不同的帮助。相信在未来的成长中,Brook 的成长及其周边的网络工具会成为多功能的系统性的网络工具,成为从事网络分析工作的同学的利器。
Brook:
https://github.com/txthinking/brook
Brook Document (文档):
https://txthinking.github.io/brook/
Brook GUI Document (文档):
https://talks.txthinking.com/articles/brook.article
Blog (博客):
https://talks.txthinking.com/
Anything:
https://txthinking.com/
Youtube:
https://www.youtube.com/txthinking
News:
https://t.me/txthinking_news
Telegram Group:
https://t.me/brookgroup
❤️ Enjoy Brook (享受使用 Brook)
Published by txthinking over 2 years ago
bash <(curl https://bash.ooo/nami.sh) # if something wrong
nami install deno # if something wrong
nami install brook
GUI: support udpovertcp via brook link
Windows GUI IPv6: https://github.com/txthinking/brook/issues/898
Published by txthinking over 2 years ago
nami install nami
nami install deno
nami install brook
Published by txthinking over 2 years ago
nami install nami
nami install brook
macOS, Windows, iOS, Android, OpenWrt
address
with brook linkinsecure
with brook linkname
with brook linkWindows: Please delete wintun files in the same directory before running
Windows: 此版本 首次运行之前删除同目录下的 wintun 文件们
If the version number has not changed after opening, because there is a cache, you can reopen it
如果打开后查看版本号没变,因为有缓存,重新打开下即可
Published by txthinking over 3 years ago
EN
$ brook relayoverbrook
$ brook servers
removed, please use multiple $ brook server
instead, joker will be useful, read the document$ brook relays
removed, please use multiple $ brook relay
instead, , joker will be useful, read the documentIt was finally built on 2021-06-26. If you downloaded the client before this, you can decide whether to download it again.
ZH
$ brook relayoverbrook
$ brook servers
已移除, 请使用多个 $ brook server
代替, joker 会很方便, 查看文档$ brook relays
已移除, 请使用多个 $ brook relay
代替, joker 会很方便, 查看文档最后构建于2021-06-26. 如果你在此之前下载的客户端, 你可以自己决定是否重新下载.
Notice:
Published by txthinking over 3 years ago
[GUI] macOS, optimize tun mode
[GUI] Windows, optimize compatibility, such as virtual machines
[GUI] If the server information is added through brook link, the details will not be displayed
[GUI] macOS, 优化 tun 模式
[GUI] Windows, 优化兼容性, 比如虚拟机
[GUI] 如果服务器信息通过brook link添加, 不会显示详情
Published by txthinking over 3 years ago
v20210601