#tor #proxy #networking

bin+lib tor-stream

Rust 接口,用于在 Tor 网络上代理网络流

4 个版本 (2 个破坏性更改)

0.3.0 2021年7月10日
0.2.0 2019年4月25日
0.1.1 2019年2月27日
0.1.0 2019年2月25日

#tor 中排名第 71

Download history 29/week @ 2024-03-16 11/week @ 2024-03-23 47/week @ 2024-03-30 36/week @ 2024-04-06 25/week @ 2024-04-13 37/week @ 2024-04-20 62/week @ 2024-04-27 32/week @ 2024-05-04 2/week @ 2024-05-11 7/week @ 2024-05-25 30/week @ 2024-06-01 24/week @ 2024-06-08 30/week @ 2024-06-15 30/week @ 2024-06-22 23/week @ 2024-06-29

每月下载 112
用于 phetch

MIT 许可证

10KB
137

tor-stream

提供在 Tor 网络上代理网络流的接口。

更多信息请参阅文档


lib.rs:

提供在 Tor 网络上代理网络流的接口。

有关创建本地 Tor SOCKS5 代理的信息,请参阅 设置

用法

如果您的 Tor 代理运行在默认地址 127.0.0.1:9050,则可以使用 TorStream::connect()。如果不是这种情况,您可以在调用 TorStream::connect_with_address() 时指定您的地址。

use tor_stream::TorStream;
use std::io::prelude::*;

let mut stream = TorStream::connect("www.example.com:80").expect("Failed to connect");

// The stream can be used like a normal TCP stream

stream.write_all(b"GET / HTTP/1.1\r\nConnection: Close\r\nHost: www.example.com\r\n\r\n").expect("Failed to send request");

// If you want the raw stream, call `into_inner()`

let mut stream = stream.into_inner();

let mut buf = String::new();
stream.read_to_string(&mut buf).expect("Failed to read response");

println!("Server response:\n{}", buf);

致谢

此 crate 主要是对 Steven Fackler 的 socks crate 的包装。

依赖项

~140–380KB