West Ham will take on Spanish side Sevilla in the last 16 of the Europa League.
The Irons won Group H and so were among the seeded teams for Friday’s draw in Nyon, Switzerland.
The first leg is set for March 10th in Seville, which will host the Europa League final at the Ramon Sanchez Pizjuan Stadium, with the return tie in London on March 17th.
Sevilla have won the competition six times and came through their knockout play-off tie against Dinamo Zagreb with a 3-2 aggregate win, despite losing 1-0 in Croatia on Thursday night.
Rangers’ reward for knocking out Borussia Dortmund is a last-16 tie against Red Star Belgrade.
Giovanni van Bronckhorst’s men saw off competition favourites Dortmund with a 6-4 aggregate victory, drawing the second leg 2-2 after a memorable 4-2 win in Germany.
The first leg against the Serbians, who were one of the seeds after finishing top of Group F, will be played at Ibrox on March 10th, with the return a week later.
Elsewhere in the draw, Barcelona, who beat Napoli in the play-offs, take on Turkish side Galatasaray.
RB Leipzig face Spartak Moscow, who will have to play their home tie at a neutral venue following the Russian invasion of Ukraine.
Braga play French club Monaco, Porto take on Lyon, Atalanta meet German side Bayer Leverkusen and Real Betis are against Eintracht Frankfurt.
Europa League last-16 draw
Rangers v Crvena Zvezda (Red Star Belgrade)
Braga v Monaco
Porto v Lyon
Atalanta v Bayer Leverkusen
Sevilla v West Ham
Barcelona v Galatasaray
Leipzig v Spartak Moscow
Real Betis v Eintracht Frankfurt