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 10 March in Seville, which will host the Europa League final at the Ramon Sanchez Pizjuan Stadium, with the return tie in London on 17 March.
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 10 March, 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.
Listen to the RTÉ Soccer podcast on Apple Podcasts, Spotify or wherever you get your podcasts.