This is how Google Voice works by design. Here is the relevant exert from the Help article:
Each time you place a call, instead of dialing the number you want to
reach, Google Voice dials a US-based direct access number. The Google
Voice server then forwards your call to the actual destination number.
This allows for faster call setup and the ability to place calls
without a data connection. These direct access numbers may show in
your phone's call log, or on your phone bill.
A unique direct access phone number is assigned to each person that
you call. The direct access numbers are stored in the Google Voice
application, not in your Contacts. They can be purged from your phone
at any time by signing out of the Google Voice app.
Direct access numbers are assigned randomly, and may include numbers
that are out of your local calling area, or even out of state. If you
don't have a nationwide calling plan, you may be charged long distance
rates by your carrier.
Basically unique, auto-generated numbers are assigned to your contacts as you dial them. These numbers don't change, but will be different from your contacts' actual telephone numbers.