I am planning to travel from Tehran to Leipzig (Germany) and then from Leipzig to Bilbao (Spain), then I would like to get back to Leipzig from Bilbao and then get back from Leipzig to Tehran. I know that there are direct flights from Bilbao to Tehran, but it is beyond my budget. It would be much cheaper to get back to Leipzig first and then travel back to Tehran.
My question is that should I apply for a single or multiple entry Schengen visa? Can I return to Leipzig with a single entry visa?