This paper addresses the problem of identifying the graph structure of a dynamical network using measured input/output data. This problem is known as topology identification and has received considerable attention in recent literature. Most existing literature focuses on topology identification for networks with node dynamics modeled by single integrators or single-input single-output (SISO) systems. The goal of the current paper is to identify the topology of a more general class of heterogeneous networks, in which the dynamics of the nodes are modeled by general (possibly distinct) linear systems. Our two main contributions are the following. First, we establish conditions for topological identifiability, i.e., conditions under which the network topology can be uniquely reconstructed from measured data. We also specialize our results to homogeneous networks of SISO systems and we will see that such networks have quite particular identifiability properties. Secondly, we develop a topology identification method that reconstructs the network topology from input/output data. The solution of a generalized Sylvester equation will play an important role in our identification scheme.