questions on External ID
The External ID (external_identifier) is maintained in the database with a unique index, so any attempt to enter a duplicate value will take an error.

The external_identifier itself is simply a variable character string of 64 char in length (varchar(64)).  As such it cannot auto-increment.  

Remember, the external_identifier is designed to contain an identifier of the contact that might originate in a separate system.  In practice, it is most common to use it when migrating from some other CRM system into CiviCRM, wherein the other systems identifier is stored in the External ID.   This can be invaluable for audit purposes.

If you are looking for an auto-incremented identifier, you should consider using the contact_id.