title: Connecting two clients in a network
body: <p>If I have two clients which are aware of each other (ie, they know which ports to use and their respective hostnames), can they connect to each other using sockets?</p>
  
  <p>I know that one could run as a server and one could run as a client, but can they both be clients? Both clients are not behind a router or firewall and each have a unique IP.</p>
  
  <p>I'm also using Java, so I'm thinking of using two Socket instances on both clients rather than a ServerSocket on one and a Socket on the other.</p>