  We study the robustness of complex networks to multiple waves of simultaneous
(i) targeted attacks in which the highest degree nodes are removed and (ii)
random attacks (or failures) in which fractions $p_t$ and $p_r$ respectively of
the nodes are removed until the network collapses. We find that the network
design which optimizes network robustness has a bimodal degree distribution,
with a fraction $r$ of the nodes having degree $k_2= (\kav - 1 +r)/r$ and the
remainder of the nodes having degree $k_1=1$, where $\kav$ is the average
degree of all the nodes. We find that the optimal value of $r$ is of the order
of $p_t/p_r$ for $p_t/p_r\ll 1$.
