#local #address #connect #bounds #bind #tcp-stream #net

bind_before_connect

生成一个绑定到指定本地地址的 std::net::TCPStream(仅限Unix系统)

1 个不稳定版本

使用旧的Rust 2015

0.1.1 2017年2月5日

#45 in #tcp-stream

MIT/Apache

10KB
205

bind_before_connect

在较老的网络协议或使用多个IP地址的情况下,人们希望使用特定的本地端口和/或特定的本地IP地址打开到远程主机的连接。换句话说,你想要指定本地源地址。

这可以通过使用 bind 系统调用(通常用于指定服务器的绑定地址)然后使用 connect 系统调用(通常用于连接到远程服务器)来完成。这个系统调用序列被称为 绑定后再连接

Rust的 std::net::TcpStream 构造函数不允许指定特定的本地地址。它会选择一个随机的较高端口来使用。这个crate构建一个已绑定的套接字,然后将其转换为你可以用作正常的 std::net::TcpStream

目前只支持基于Unix的系统。对于Windows等系统的实现将非常受欢迎。

使用示例

请参阅 examples/simple.rs 并运行 cargo run --example simple

依赖项

~43KB