Skip to main content

A Simple and Powerful TCP Distributor for Windows


If you are interested in my TCP software development, consulting or training services, please feel free to contact me.  

contact email: tcpfast@gmail.com

Download link at the end.

Do you want to split your TCP traffic based on the content of the first data packet sent by the client? Do you want to forward the traffic to different IP addresses and ports according to the keywords you specify? Do you want to do all these things in a simple and convenient way on Windows platform? If your answer is yes, then you should try this TCP splitter program that I developed.


What is TCP splitter ( TCP Distributor & Relay & Forward) ?

TCP splitter is a program that can easily implement TCP content splitting, proxy, port mapping and other functions on Windows platform. It works by analyzing the first data packet sent by the client and checking if it contains any of the keywords that you define in the configuration file. If it does, it will forward the traffic to the corresponding IP address and port. If it does not, it will forward the traffic to a default IP address and port that you also specify in the configuration file.


How to use TCP splitter (TCP Distributor & Relay & Forward) ?

Using TCP splitter is very easy. You just need to download the program and unzip it. Then you can run it without any installation. The program supports both IPv4 and IPv6 addresses, as well as domain names. You can use any valid IP address or domain name as the destination of the traffic.


How to configure TCP splitter (TCP Distributor & Relay & Forward) ?

Configuring TCP splitter is also very simple. You just need to edit the configuration file(config.txt) that comes with the program. The configuration file is a plain text file that contains the keywords and the corresponding IP addresses and ports. You can add as many keywords as you want, each on a separate line. The format of the configuration file is as follows:


config.txt

  1. keyword=string1
  2. IP=127.0.0.1
  3. Port=8001
  4. keyword=string2
  5. IP=www.abc.com
  6. Port=8002
  7. IP2=192.168.1.1
  8. Port2=8888

The above configuration file means that if the client sends a data packet that contains the keyword `string1`, the traffic will be forwarded to `127.0.0.1:8001`. If the data packet contains the keyword `string2`, the traffic will be forwarded to `www.abc.com:8002`. If the data packet does not contain any of the keywords, the traffic will be forwarded to `192.168.1.1:8888`.


Why use TCP splitter (TCP Distributor & Relay & Forward) ?

TCP splitter is a useful tool for various scenarios where you need to split your TCP traffic based on the content. For example, you can use it to implement a simple load balancer, a proxy server, a port mapper, a firewall, a content filter, or a protocol analyzer. TCP splitter is also lightweight, fast, and reliable. It does not consume much CPU or memory resources, and it can handle a large number of concurrent connections.

download link: https://drive.google.com/file/d/1hd-lk7dUEYbD5mJ_n_2gDaBalalVf8tg/view?usp=sharing


contact email: tcpfast@gmail.com


Comments

Popular posts from this blog

How to Set Buffer Size for TCP Socket Programming in C++

TCP socket programming is a common way to communicate between different processes or machines over the network. However, one of the challenges of TCP socket programming is how to set the buffer size for sending and receiving data. The buffer size determines how much data can be stored in memory before it is transmitted or processed. If the buffer size is too small, the data may be fragmented or lost, resulting in poor performance or errors. If the buffer size is too large, the memory may be wasted or the data may be delayed, affecting the responsiveness or timeliness of the communication. In this blog post, I will explain how to set the buffer size for TCP socket programming in C++, and provide some examples of how to use the relevant functions and parameters. The buffer size for TCP socket programming in C++ can be set by using the setsockopt function, which allows the programmer to change the options for a socket. The setsockopt function has the following prototype: int setsockopt...

How to Fix TCP Socket Error Code 10061 in C++, Python, and Java

If you are interested in my TCP socket software development, consulting or training services, please feel free to contact me.   contact email: tcpfast@gmail.com TCP  socket error code 10061 is a common network connection error that indicates that the target server refused the connection request. This usually happens when you try to connect to a service that is not running on the target host, or when your network firewall or antivirus software blocks the port communication. In this blog post, I will explain the possible causes of this error and how to fix it in different programming languages, such as C++, Python, and Java. Possible Causes of TCP Socket Error Code 10061 There are several possible reasons why you may encounter TCP error code 10061 when you try to establish a TCP connection with a server. Some of the most common ones are: - You are using the wrong port number or protocol type (TCP or UDP) to connect to the server. For example, if the server is listening on p...

How to Capture and Modify TCP Packets Using Npcap Library in C

email:  tcpfast@gmail.com  In this blog post, I will show you how to use the pcap library in C to capture and modify TCP packets on the fly. The pcap library is a powerful tool for network analysis and manipulation, which allows you to access raw packets from various network interfaces. You can use the pcap library to implement your own network applications, such as firewalls, proxies, sniffers, etc. The Code The code I will use as an example is as follows: # include <stdio.h> # include <stdlib.h> # include <pcap.h> # include <Packet32.h> # include <ntddndis.h> # define MAX_PACKET_SIZE 65536 # define KEYWORD "keyword1" # define IP1 "192.168.0.1" # define PORT1 12345 void packet_handler (u_char* user_data, const struct pcap_pkthdr* pkthdr, const u_char* packet) ; int main () { pcap_t * handle; char errbuf[PCAP_ERRBUF_SIZE]; // Open the network adapter handle = pcap_open_live( "\\Device\\...