Holders Chelsea will play French side Lille in the Champions League last 16 after the draw for the knockout stages took place for a second time.
A “technical problem” caused an error in the initial draw, which Uefa said had been “declared void”.
Premier League champions Manchester City face Portugal’s Sporting Lisbon while six-time winners Liverpool play three-time winners Inter Milan.
Manchester United face Spanish champions Atletico Madrid.
In the standout tie of the round, 13-time champions Real Madrid come up against French powerhouse Paris St-Germain.
Champions League last-16 draw:
Red Bull Salzburg v Bayern Munich
Sporting Lisbon v Manchester City
Benfica v Ajax
Chelsea v Lille
Atletico Madrid v Manchester United
Villarreal v Juventus
Inter Milan v Liverpool
PSG v Real Madrid
In the original draw, Manchester United’s ball was pulled out of the pot against Villarreal but they were ineligible to face each other as they had been in the same group – an eventuality Uefa said the technology should have prevented.
Last season’s Europa League winners Villarreal were instead paired with Premier League champions City.
Further confusion appeared to occur when United were excluded from the pot of possible opponents for Atletico Madrid, and Liverpool included instead.
However, United could have played the Spanish side and Liverpool could not, having progressed into the knockout stage from the same group.
Uefa said in a statement: “Following a technical problem with the software of an external service provider that instructs the officials as to which teams are eligible to play each other, a material error occurred in the draw for the Uefa Champions League round of 16.
“As a result of this, the draw has been declared void and will be entirely redone.”