The heterogeneous nature of smart grid components and the desire for smart grids to be scalable, stable and respect customer privacy have led to the need for more distributed control paradigms. In this paper we provide a distributed optimal power flow solution for a smart distribution network with separable global costs, separable non-convex constraints, and inseparable linear constraints, while considering important aspects of network operation such as distributed generation and load mismatch, and nodal voltage constraints. An asynchronous averaging consensus protocol is developed to estimate the values of inseparable global information. The consensus protocol is then combined with a fully distributed primal dual optimization utilizing an augmented Lagrange function to ensure convergence to a feasible solution with respect to power flow and power mismatch constraints. The presented algorithm uses only local and neighbourhood communication to simultaneously find the mismatch between power generation, line loss and loads, to calculate nodal voltages, and to minimize distributed costs, leading to a completely distributed solution of the global problem. An IEEE test feeder system with a reasonable number of nodes is used to illustrate the proposed method and efficiency.