Ich würd die p2p Portverteilung dynamisch regeln. Sprich die Clients sollten mit einander "reden" und sich auf einen Port "einigen".
So ist es auch kein Problem, wenn der Port mehrfach verwendet wird im Netzwerk, da du ja direkt anhand der
IP Adresse und Port Verbindest.
Mir würde auch spontan nichts anderes einfallen, um eine Portbestimmung zu machen.
(Klar ist aber auch, dass du ggf. prüfen musst ob bei beiden "Clients" der Port auch frei ist.)
Ansonsten hätte ich das genauso gemacht.