Altium Designer includes excellent surface mount component fanout tools, which also support BGA escape routing. The escape routing engine will attempt to route each pad out to just beyond the edge of the device - making routing connections to them much easier.
Fanout and escape routing is launched from the Autoroute » Fanout sub-menu, or from the Component Actions menu (right-click on the component).
Use the Fanout Options dialog to control fanout and escape routing options.
Used inner pads are first fanned out using the traditional dog-bone (a short route with a via on the end) to access another layer, and then from the via they are escape routed out just beyond the edge of the device, working through the available routing layers until all pads have been escape routed.
Fanout and escape routing is done in accordance with the applicable design rules, including the Fanout Control rule, Routing Width rule, Routing Via Style rule, Routing Layers rule and the Electrical Clearance rule. A report of all pads that could not be escape routed will be generated and opened, click on an entry in the report to cross probe to the PCB and examine that object.
The Fanout Options dialog includes controls that let you specify fanout and escape routing options, as well as options for using blind vias (between drill pair layers, which are set up in the Layer Stack Manager dialog. Other options include fanning out the outer two rows of pads in addition to the inner (and harder to get to) rows, and only pads that have nets assigned to them.
Example of fanout and escape routes for a 1mm pitch BGA.