jpillora / jpillora/chisel

Random opened port for local binding in case its not given

Open
#434 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
16.6k
Forks
1.6k
PR merge metrics
No merged PRs in 30d

Description

Current logic defaults local port to remote one in case former is not given. Maybe it makes sense to use any opened port for local port on a server side at least for reversed connections? Otherwise there is no way for client to determine which port to use for local binding on a server in case there is a lot of connections and ports might be already used on a server while they are free on a client.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the current logic that defaults the local port to the remote port, then follow the reversed-connection handling described in the issue. Define how an available server-side port would be selected and communicated to the client, and add coverage showing that omitted local ports work when the remote port is already occupied.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.