Crate mproxy_server

Source
Expand description

Multicast Network Dispatcher and Proxy

§MPROXY: Server

Listen for incoming UDP messages and log to file.

§Quick Start

In Cargo.toml

[dependencies]
mproxy-server = "0.1"

Example src/main.rs

use std::path::PathBuf;
use std::thread::JoinHandle;

use mproxy_server::listener;

// bind to IPv6 multicast channel on port 9920
let listen_addr: String = "[ff01::1]:9920".into();

// output filepath
let logpath = PathBuf::from("server_demo.log");

// copy input to stdout
let tee = true;

// bind socket listener thread
let server_thread: JoinHandle<_> = listener(listen_addr, logpath, tee);
server_thread.join().unwrap();

§Command Line Interface

Install with cargo

cargo install mproxy-server
MPROXY: UDP Server

Listen for incoming UDP messages and log to file or socket.

USAGE:
  mproxy-server [FLAGS] [OPTIONS] ...

OPTIONS:
  --path        [FILE_DESCRIPTOR]   Filepath, descriptor, or handle.
  --listen-addr [SOCKET_ADDR]       Upstream UDP listening address. May be repeated

FLAGS:
  -h, --help    Prints help information
  -t, --tee     Copy input to stdout

EXAMPLE:
  mproxy-server --path logfile.log --listen-addr '127.0.0.1:9920' --listen-addr '[::1]:9921'

§See Also

Functions§

listener
Server UDP socket listener. Binds to UDP socket address addr, and logs input to logfile. Can optionally copy input to stdout if tee is true. logfile may be a filepath, file descriptor/handle, etc.
upstream_socket_interface