{"id":20662032,"url":"https://github.com/kilemonn/socketforwarder","last_synced_at":"2026-04-17T14:33:40.549Z","repository":{"id":258107114,"uuid":"825162906","full_name":"Kilemonn/SocketForwarder","owner":"Kilemonn","description":"A TCP and UDP forwarder that accepts socket connections and registers them into designated group. Messages received from registered sockets will be forwarded to other sockets in the same group.","archived":false,"fork":false,"pushed_at":"2024-10-16T06:20:25.000Z","size":136,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-17T12:25:25.378Z","etag":null,"topics":["cpp","docker-image","forwarder","group-id","multithreading","socket-programming","tcp","udp"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Kilemonn.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":"2024-07-07T01:18:03.000Z","updated_at":"2024-10-16T06:20:29.000Z","dependencies_parsed_at":"2024-10-17T17:56:44.677Z","dependency_job_id":null,"html_url":"https://github.com/Kilemonn/SocketForwarder","commit_stats":null,"previous_names":["kilemonn/socketforwarder"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kilemonn%2FSocketForwarder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kilemonn%2FSocketForwarder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kilemonn%2FSocketForwarder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kilemonn%2FSocketForwarder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kilemonn","download_url":"https://codeload.github.com/Kilemonn/SocketForwarder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242793058,"owners_count":20185949,"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":["cpp","docker-image","forwarder","group-id","multithreading","socket-programming","tcp","udp"],"created_at":"2024-11-16T19:12:38.707Z","updated_at":"2026-04-17T14:33:35.525Z","avatar_url":"https://github.com/Kilemonn.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SocketForwarder\nA TCP and UDP forwarder that creates common sessions and forwards incoming packets to all sockets registered for that session.\n\nPlease review the [Wiki](https://github.com/Kilemonn/SocketForwarder/wiki) for more specific argument and configuration notes.\n\n## Quick Start\n\n### From Command-line\n\nOn commandline the application is accepting 2 `unsigned short` arguments as the listening port numbers for TCP and UDP forwarders respectively.\n\n**NOTE:** At the moment from the command line, you must provide a valid TCP port in order to provide and start up the UDP forwarder. This is due to the ordering of the commandline arguments without any flags.\n\nExample command structure:\n``` bash\n./SocketForwarder \u003cTCP-PORT\u003e \u003cUDP-PORT\u003e\n```\n\nExample command:\n``` bash\n./SocketForwarder 6753 33345\n```\n\n*Please review the Docker Image section to understand the available environment variables.*\n\n### From Docker Image\n\nImage available at: https://hub.docker.com/r/kilemon/socket-forwarder\n\n**Make sure you `EXPOSE` the required ports that you wish to use as listener ports. By default the image exposes no ports.**\n\nRunning the container allows you to customise the forwarder in specific ways as per the environment variables that you provide on startup to the application.\n\nPlease see the [Wiki](https://github.com/Kilemonn/SocketForwarder/wiki) for more detail on the arguments and configuration options.\n\nFor quick start you need to match the exposed TCP and UDP ports respectively to the environment variables:\n- `socketforwarder.tcp.port`\n- `socketforwarder.udp.port`\n\nThis will tell the application which ports to list on for new connections. More information about the underlying workings of the forwarder and its groups are in the wiki.\n\nE.g. Dockerfile:\n\n```dockerfile\nFROM kilemon/socket-forwarder:latest\n\n# Matches exposed ports below\nENV socketforwarder.tcp.port=34765\nENV socketforwarder.udp.port=11234\n\nEXPOSE 34765/tcp\nEXPOSE 11234/udp\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkilemonn%2Fsocketforwarder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkilemonn%2Fsocketforwarder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkilemonn%2Fsocketforwarder/lists"}