European champions Real Madrid will face Schalke, Barcelona will play Manchester City and Chelsea will play Paris St Germain in three ties repeated from last season following the draw for the Champions League last 16.
Real Madrid knocked Schalke out of the last 16 last season 9-2 on aggregate, Barcelona beat Manchester City 4-1 while Chelsea beat PSG on away goals in the quarter-finals.
Last week Chelsea manager Jose Mourinho said he would welcome being drawn against PSG "because it will be easy for our fans to travel to Paris" - and he got his wish when Karl-Heinz Riedle drew the pair together.
Riedle, who performed the draw in his role as ambassador for Berlin, the venue for this season's final on June 6th and who scored twice when his Borussia Dortmund team beat Juventus 3-1 in the 1997 final, also drew those two clubs together.
Last season's beaten finalists Atletico Madrid face Bayer Leverkusen in another Spain-Germany match-up.
Arsenal manager Arsene Wenger will face his old club AS Monaco in a competitive match for the first time while five-time winners Bayern Munich take on Shakhtar Donetsk.
Swiss club FC Basel play Porto.
Real beat Schalke 6-1 in the first leg and 3-1 in the second leg last season en route to their 10th European Cup success.
After drawing English champions Manchester City, Barca sporting director Andoni Zubizarreta said it's a great tie against a great rival, a team we know extremely well.
The first legs will start in mid-February.