Interestingly, some 39% of Vietnamese people have the surname Nguyen. This means you’re going to have a hard time finding the right Nguyen in any phone directory. It also means that someone with the last name Nguyen isn’t going to have much luck using a search engine to find out much about themselves.
It was the Chinese who gave Vietnam family names. The Chinese have had family names for thousands of years, sometimes indicating occupation, social status, or membership of a minority group. Well before the time of China’s occupation of Vietnam, the Chinese had a sophisticated system of family names for a pretty basic reason: taxes. Basically, the Chinese (and later the Romans and Normans) conquered all these places with all these people, and they needed some way to keep track of them so they could be taxed.
But most of these places didn’t have family names, which made them a real pain to monitor. i.e. how can you be sure that you’re taxing the right Dũng, when there is a dozen of them in the same village and they’re referred to as “Uncle Dũng” and “Brother Dũng”? So, the Chinese just started handing out last names to people. They assigned these surnames pretty much randomly. ‘Nguyen’, for example, came from the Chinese name ‘Ruan’. Anthropologists believe that a senior Chinese administrator probably used their own personal names to designate people under their own age. – This kind of thing happened a lot incidentally. As seen in the tendency of the imperialist to just bestow his name on the people he conquered can be seen everywhere from the Philippines (which has plenty of Spanish last names) to the U.S. where black Americans often have the names of the owners of slave ancestors.
Whilst the real origins of the name ‘ Ruan’ are unknown, it seems likely that some mid-level Chinese bureaucrat, in seeking to figure out who actually lived in his newly conquered Vietnamese territory, simply decided that everyone living there would also be named Ruan—which became Nguyen.
Though last names in Vietnam are, much older than they are in most parts of the world (because of their time under Chinese control), surnames never became a fundamental way Vietnamese people referred to each other. In Vietnamese, you essentially refer to someone by their given name and add some kind of family-based modifier which indicates the relationship between the speaker and listener. If you’re talking to Dũng for example and he’s about the same age as you, you’d call him Anh Dũng, meaning “Brother Dung.” To indicate age or gender differences or respect, you might substitute something like “aunt,” “grandmother,” or “child” in for “Anh.”
A tradition of showing loyalty to a leader by taking the family name is probably the origin of why there are so many Nguyens in Vietnam, and it is likely that there were plenty of people with the last name Nguyen before then, as there were never all that many last names in Vietnam to begin with.