Use Dial or DialTimeout to establish a connection where the local source port is explicitly set. This allows you to dial from the same local port used by other connections, provided the remote address/port (the other half of the 4-tuple) is different.
Note: You cannot dial your own listening address because TCP/IP stacks use 4-tuples to identify connections, and doing so would cause a clash.
Example of dialing from a specific local port:
l1, _ := reuse.Listen("tcp", "127.0.0.1:1234")
l2, _ := reuse.Listen("tcp", "127.0.0.1:1235")
// Dial from local address 127.0.0.1:1234 to remote address 127.0.0.1:1235
c, _ := reuse.Dial("tcp", "127.0.0.1:1234", "127.0.0.1:1235")
l1, _ := reuse.Listen("tcp", "127.0.0.1:1234")
l2, _ := reuse.Listen("tcp", "127.0.0.1:1235")
c, _ := reuse.Dial("tcp", "127.0.0.1:1234", "127.0.0.1:1235")