I ve had to do this manually doing a city list for my desired region and cross referncing with ZIP code lists online. The problem here is each tlf carrier doesnt necessarlity match a geo IP location for postal codes.
Good news: GeoIP is now integrated in Piwik, enabling Accurate Visitors Geolocation in your Analytics reports. To enable GeoIP go to the Settings > Geolocation admin page, and follow the short instructions.
You can also get an even more accurate Country & City Database from here to enjoy top accuracy in detecting your visitors locations.
See also the documentation about Geolocation - Analytics Reports in Piwik.