In this paper, a two-layer k-epsilon model is used to simulate fully developed turbulent flow in ducts with rough walls. The model formulation of Durbin et al (2001) is adopted, which introduces a hydrodynamic roughness, y(o), to define the location where the mean velocity appears to go to zero, and also to implement the appropriate boundary conditions on the turbulence field. The model is evaluated by applying it to fully developed turbulent pipe flow for the three different roughness regimes, namely hydraulically smooth, transitional roughness, and fully rough flow, using sand grain roughness. The paper shows that the model correctly predicts both the skin friction and roughness shift of the mean velocity profile in fully rough flow, which is to be expected, since the model was calibrated against pipe data. The model is also observed to predict an enhanced level for the turbulence kinetic energy and eddy viscosity in the core region of the flow. This is consistent with recent boundary layer measurements which show that the effects of surface roughness can extend into the outer region of the flow.