You can use a date field, but you'll need to reduce the age range it supports. There's really no other solution as it's searching does not provide ranges of 20 - 30 for example. You could do what we've done and use a list fieldtype with the age ranges as text, but then when a user goes outside the age range they'll need to edit the field and select a new age range.