tcpmirror
tcpmirror copied to clipboard
Mirror TCP traffic on one port to multiple ports/destinations
TCP Mirror
tcpmirror duplicates TCP traffic received on a port to more than one destination ports.
One of the destination is the primary server (port) which responds
to the incoming TCP traffic. Other streams are duplicate streams and
any response from the respective servers is discarded.
Why
This is helpful in the following scenarios:
-
To test a Dev/QA/secondary server with the same requests, traffic and load that the primary production server handles.
-
To do performance testing of candidate servers against the existing production server.
-
To re-write the server in another language and make sure that the new server responds the same as existing server for same requests.
Install
Download from the releases pages
Download pre-built binary from the release page.
Use go get
If you have golang tools installed, you can download and build the source code
locally as follows:
$ go get github.com/codeexpress/tcpmirror
The tcpmirror binary is now available in your $GOPATH/bin directory
Compile from source
$ git clone https://github.com/codeexpress/tcpmirror.git
$ cd tcpmirror; go run tcpmirror.go