Refuse collection network design, one of major decision problems in reverse logistics, is the problem of locating collection points and allocating refuses at demand points to the opened collection points. As an extension of the previous models, we consider capacity and maximum allowable distance constraints at each collection point. In particular, the maximum allowable distance constraint is additionally considered to avoid the impractical solutions in which collection points are located too closely. Also, the additional distance constraint represents the physical distance limit between collection and demand points. The objective is to minimize the sum of fixed costs to open collection points and variable costs to transport refuses from demand to collection points. After formulating the problem as an integer programming model, we suggest an optimal branch and bound algorithm that generates all feasible solutions by a simultaneous location and allocation method and curtails the dominated ones using the lower bounds developed using the relaxation technique. Also, due to the limited applications of the optimal algorithm, we suggest two heuristics. To test the performances of the algorithms, computational experiments were done on a number of test instances, and the results are reported.