A five-wicket haul for Mitchell Starc took his Test total beyond 100, but Australia failed to seize the initiative on day of their second match against Sri Lanka in Galle.
Starc marked his return to the side with six wickets in the 106-run first-Test defeat and he surpassed the century milestone with impressive figures of 5-44.
The paceman dismissed Dimuth Karunaratne with the first ball of the match and claimed his ton with the scalp of Kusal Mendis, who salvaged Sri Lanka's innings with an impressive knock of 86.
A brilliant day for Starc was capped when he bowled Rangana Herath (14) as Sri Lanka were all out for 281, with Australia losing their openers as they reached stumps at 54-2.
Sri Lanka captain Angelo Mathews would have been relying on a strong start from his openers after sending his team in to bat first, but the opposite occurred as Karunaratne clipped Starc to Joe Burns at midwicket as Australia got off to a flyer.
Starc had his second wicket of the match when Kaushal Silva (5) was caught behind by wicketkeeper Peter Nevill in the fifth over, leaving Sri Lanka in dire straits at 9-2.
But just as he did in Pallekele, Mendis mounted a salvage job for the hosts. He proved strong through midwicket, where he launched Nathan Lyon (2-78) for six, as he made his second Test fifty off 74 balls.
Kusal Perera (49) provided impressive support and was denied a boundary by some phenomenally athletic fielding from Lyon, before the spinner ended their 108-run partnership shortly after lunch.
Mathews (54) set an aggressive tone by hitting Lyon beyond the long-on boundary second ball, clocking up the runs with a variety of shots, but, after escaping an on-field lbw call on review, Mendis edged back to Nevill to hand Starc his 100th Test wicket.
Having brought up his half-century off the 59th delivery faced, Mathews went to Mitchell Marsh (1-30).
Sri Lanka lost their remaining four wickets in the space of seven overs, their first innings coming full circle amid a maiden Test scalp for Jon Holland (1-64) with Dhananjaya de Silva (37) trapped leg before.
Australia suffered an early setback with Burns dismissed for a second-ball duck by debutant Vishwa Fernando (1-16).
David Warner charged to 42 runs alongside Usman Khawaja (11 not out) before being caught at first slip off Dilruwan Perera (1-14) with the final ball of the day, putting pressure on the middle order heading into day two.