I have an internship offer from a tiny software company in Germany. I am from Turkey, so it's not in the EU. I am a university student. The internship is unpaid, and for 6 months.
I am not eligible for an Erasmus+ grant. How can I get a visa?
As of January 1st, 2015 'unpaid internships' of ANY length are strictly forbidden! (Section 612 para.1)
Well, if this is more than 90 days, then you need a residence permit, not a visa. And for the residence permit you may need to fund your stay. However, I'm not sure, which type of the residence permit you can apply for.
The funding yourself could be done in a way, that you block the necessary amount of money (approx. 700 Euro x 6 months = 4200 Euro) on the account in the German bank, and you will be allowed to take no more than 700 Euro per month back from that account. The account should be open after you will get the German national visa and enter Germany, but before or during the time you apply for the residence permit.