{"id":19894685,"url":"https://github.com/matteobaccan/sockredirector","last_synced_at":"2025-05-02T20:30:46.868Z","repository":{"id":39971621,"uuid":"179180567","full_name":"matteobaccan/SockRedirector","owner":"matteobaccan","description":"Redirects TCP connections from one IP address and port to another","archived":false,"fork":false,"pushed_at":"2025-04-18T09:20:33.000Z","size":174502,"stargazers_count":11,"open_issues_count":2,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-18T16:14:01.704Z","etag":null,"topics":["hacktoberfest","java","logger","multithreading","portforward"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matteobaccan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-04-03T00:35:48.000Z","updated_at":"2025-04-18T03:05:28.000Z","dependencies_parsed_at":"2024-01-01T18:34:37.805Z","dependency_job_id":"f60f913e-ec57-4b8d-90a2-40aca51c1506","html_url":"https://github.com/matteobaccan/SockRedirector","commit_stats":null,"previous_names":[],"tags_count":79,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matteobaccan%2FSockRedirector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matteobaccan%2FSockRedirector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matteobaccan%2FSockRedirector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matteobaccan%2FSockRedirector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matteobaccan","download_url":"https://codeload.github.com/matteobaccan/SockRedirector/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252103920,"owners_count":21695387,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest","java","logger","multithreading","portforward"],"created_at":"2024-11-12T18:34:19.215Z","updated_at":"2025-05-02T20:30:41.858Z","avatar_url":"https://github.com/matteobaccan.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SockRedirector\n\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/fce631c07eac48b682d8da9aee4b5301)](https://www.codacy.com/app/matteobaccan/SockRedirector?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=matteobaccan/SockRedirector\u0026amp;utm_campaign=Badge_Grade)\n[![Language grade: Java](https://img.shields.io/lgtm/grade/java/g/matteobaccan/SockRedirector.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/matteobaccan/SockRedirector/context:java)\n[![Total alerts](https://img.shields.io/lgtm/alerts/g/matteobaccan/SockRedirector.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/matteobaccan/SockRedirector/alerts/)\n[![Build Status](https://travis-ci.org/matteobaccan/SockRedirector.svg?branch=master)](https://travis-ci.org/matteobaccan/SockRedirector)\n[![security status](https://www.meterian.io/badge/gh/matteobaccan/SockRedirector/security)](https://www.meterian.io/report/gh/matteobaccan/SockRedirector)\n[![stability status](https://www.meterian.io/badge/gh/matteobaccan/SockRedirector/stability)](https://www.meterian.io/report/gh/matteobaccan/SockRedirector)\n[![DepShield Badge](https://depshield.sonatype.org/badges/matteobaccan/SockRedirector/depshield.svg)](https://depshield.github.io)\n\n\u003ca href=\"https://github.com/matteobaccan/SockRedirector/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/matteobaccan/SockRedirector\" alt=\"Stars Badge\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/matteobaccan/SockRedirector/network/members\"\u003e\u003cimg src=\"https://img.shields.io/github/forks/matteobaccan/SockRedirector\" alt=\"Forks Badge\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/matteobaccan/SockRedirector/pulls\"\u003e\u003cimg src=\"https://img.shields.io/github/issues-pr/matteobaccan/SockRedirector\" alt=\"Pull Requests Badge\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/matteobaccan/SockRedirector/issues\"\u003e\u003cimg src=\"https://img.shields.io/github/issues/matteobaccan/SockRedirector\" alt=\"Issues Badge\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/matteobaccan/SockRedirector/graphs/contributors\"\u003e\u003cimg alt=\"GitHub contributors\" src=\"https://img.shields.io/github/contributors/matteobaccan/SockRedirector?color=2b9348\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/matteobaccan/SockRedirector/blob/master/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/matteobaccan/SockRedirector?color=2b9348\" alt=\"License Badge\"/\u003e\u003c/a\u003e\n[![GraalVM Build](https://github.com/matteobaccan/SockRedirector/actions/workflows/graalvm.yml/badge.svg)](https://github.com/matteobaccan/SockRedirector/actions/workflows/graalvm.yml)\n\nRedirects TCP connections from one IP address and port to another\n\nI have used this tool for many years. This tool allow to redirect the TCP data from a port of one ip to another remote port of a remote machine.\n\nThis tool is very usefull in complex network architecture, where there are some firewall that are open only from one machine to another.\n\nIn this situation you can put sockRedirector server on thrusted machine, and connect to remote server using this machine\n\nThe concept is very similar to a proxy, without the limitation of use only http connection or the problem to write a socks interface.\n\nJava sockRedirector is written in Java.\n\nUse this program in Linux, Windows, AIX, AS/400 or all environment you want.\n\n## Documentation\n\n### sockRedirector.ini\nIni file is divided in several section For each section you can define these parameters\n\n|key| type | default | value  |\n|--|--|--|--|\n| source | string | **mandatory** | source ip to bind, listen on |\n| sourceport | int | **mandatory** | source port to bind, listen on |\n| destination | string | **mandatory** | destionation to bind |\n| destinationport | int | **mandatory** | destionation port to bind |\n| log | boolean | true | Create a log under logs/sockRedirector.log |\n| timeout | int | 0 | source socket timeout (seconds) |\n| client | int | 10 | max connected client to the source |\n| blocksize | int | 64000 | size of buffer to read from source and destination |\n| inReadWait | long | 0 | reading from destination pause  |\n| inWriteWait | long | 0 | writing to destination pause |\n| outReadWait | long | 0 | reading from source pause |\n| outWriteWait | long | 0 | write to source pause |\n| randomKill | long | 0 | random kill of thread within N seconds |\n\n## Example\n### Configuration Example (sockRedirector.ini)\n\n```xml\n\u003credirection\u003e\n   \u003csource\u003e127.0.0.1\u003c/source\u003e\n   \u003csourceport\u003e80\u003c/sourceport\u003e\n   \u003cdestination\u003e1.1.1.1\u003c/destination\u003e\n   \u003cdestinationport\u003e80\u003c/destinationport\u003e\n   \u003clog\u003etrue\u003c/log\u003e\n   \u003ctimeout\u003e0\u003c/timeout\u003e\n   \u003cclient\u003e50\u003c/client\u003e\n   \u003cinReadWait\u003e0\u003c/inReadWait\u003e\n   \u003cinWriteWait\u003e0\u003c/inWriteWait\u003e\n   \u003coutReadWait\u003e0\u003c/outReadWait\u003e\n   \u003coutWriteWait\u003e1000\u003c/outWriteWait\u003e\n\u003c/redirection\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteobaccan%2Fsockredirector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatteobaccan%2Fsockredirector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteobaccan%2Fsockredirector/lists"}