I support the idea of active-duty military under 21 being allowed to drink or smoke legally. If you're putting your life on the line for this country, you deserve a drink.
However, I disagree with making any type of "federal service" a criteria for voting. Instead, I would make it contingent on one's citizenship status, age (18+), and education status (HS diploma/GED required). Of course, I'd also want to do a complete overhaul on how US schools teach history, civics, and economics education.
IR: medical disability preventing military service: considering the need for personnel that the military has now, there's not a lot of medical conditions that would disqualify one from service in a support/logistics position. Also, if one has a medical condition serious enough to prevent service, I would imagine that one shouldn't be drinking alcohol in the first place......