#websocket #proxy #tcp

bin+lib wstcp

WebSocket to TCP proxy server

6 releases

✓ Uses Rust 2018 edition

0.1.5 Feb 6, 2020
0.1.4 May 19, 2018
0.1.1 Apr 23, 2018

#11 in WebSocket

33 downloads per month

MIT license

43KB
1K SLoC

wstcp

wstcp Documentation Build Status License: MIT

WebSocket to TCP proxy written in Rust.

Install

Precompiled binaries

A precompiled binary for Linux environment is available in the releases page.

$ curl -L https://github.com/sile/wstcp/releases/download/0.1.1/wstcp-0.1.1.linux -o wstcp
$ chmod +x wstcp
$ ./wstcp -h
wstcp 0.1.1
WebSocket to TCP proxy server

USAGE:
    wstcp [OPTIONS] <REAL_SERVER_ADDR>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
        --bind-addr <BIND_ADDR>    TCP address to which the WebSocket proxy bind [default: 0.0.0.0:13892]
        --log-level <LOG_LEVEL>     [default: info]  [possible values: debug, info, warning, error]

ARGS:
    <REAL_SERVER_ADDR>    The TCP address of the real server

Using Cargo

If you have already installed Cargo, you can install wstcp easily in the following command:

$ cargo install wstcp

Examples

Run wstcp in a terminal:

$ wstcp 127.0.0.1:3000
Apr 22 23:21:20.717 INFO Starts a WebSocket proxy server, server_addr: 127.0.0.1:3000, proxy_addr: 0.0.0.0:13892

Run a TCP server (in this example nc is used) in another terminal:

$ nc -l 127.0.0.1 3000

Use ws to launch a WebSocket client:

$ ws ws://localhost:13892/
> foo # Enter "foo" and press the Enter key

After this, the "foo" string is displayed on the terminal running nc.

References

Dependencies

~7MB
~143K SLoC