West Ham will face Sevilla in the last-16 of the Europa League, while Rangers will face Red Star Belgrade.
They made it to the last-16 after topping their group.
Rangers had to come through the round of 32 to get to this stage for the third year in a row.
The first and second legs will be played in March.
Hammers will travel to Spain first, followed by Rangers.
The final of the competition will be hosted by Sevilla at their Ramon Sanchez Pizjuan Stadium.
Barcelona has been drawn by Turkish side Galatasaray.
Spartak Moscow will play a German side. Spartak, the last Russian side left in European competition, cannot host the second leg because of Russia's invasion of Ukraine.
Russia has been stripped of its place in the European Championship final in 2022, with the game moved to Paris.
Rangers are playing Zvezda.
AS Monaco vs. SC Braga.
FC Porto is playing Lyon.
Atalanta and Bayer Leverkusen.
West Ham vs Sevilla.
Barcelona plays Galatasaray.
Spartak Moscow plays RB Leipzig.
Real Betis are playing Eintracht Frankfurt.