Sembra un'istanza perfetta di xyproblem . Mentre è possibile limitare il pool di porte client temporanee che il sistema operativo utilizza a 1 e quindi impostare in modo efficace la porta client per ogni connessione come si desidera, non si sarà abbastanza veloci da farlo per non causare problemi di rete lungo il percorso ( Ad esempio, un caricamento di una pagina Web potrebbe aprire 20 connessioni in un periodo di tempo molto breve.)
Non è completamente chiaro il motivo per cui si vorrebbe farlo, quindi il riferimento al problema xy.
Come ho affermato nei commenti:
Ogni volta che un programma utilizza l'API del SO per ottenere un socket di rete, può scegliere una porta di suo gradimento e gestire l'errore se quella porta è occupata o il sistema operativo attingere da un intervallo di porte disponibili e consentite per il programma da associare.
Oltre alla scelta locale delle porte di origine, c'è questo nuovissimo concetto di Traduzione degli indirizzi di rete che fa cosa vuoi come effetto collaterale.
Infine, non mi è chiaro quali implicazioni di sicurezza potrebbero derivare dal non avere il pieno controllo sulle porte di origine - non come sarebbe vantaggioso.