Many surname types have understandable origins, like occupations (Miller, Smith), or "son of" (Jackson)
But people with the last name Black, White, Green(e), Brown, why did their ancestors get these family names? It happens in at least English and German, so might be a Germanic name thing?
Back before surnames were fixed and people in Europe still used bynames (see my post on the history of surnames in Europe here), the last names Black, Brown, White, Grey, and Rudd almost always referred to people with the hair colors black, brown, blond, gray, and red. Occasionally, they could refer to skin complexion, but that was less common.
The last name "Green" usually referred to someone who lived on the village green, i.e. the town square where all the shops were.
So a town with several Johns might distinguish them as John the White, John the Brown, John at the Green, and so on.
Surnames became fixed in the aftermath of the Norman Invasion in 1066. This is why "blond" never became a surname like the others--because the word "blond" didn't enter the English language until the 1400s, a few centuries after surnames had become permanent.
In German and Dutch speaking areas, patronymics with cognomen/bynames continued on longer, but the convention of using "white" for blond had long been established, and such fair-haired people continued to be given the last names "Weiss" or "de Witt"/"Dewitt".
The last name "Orange" is rare, but isn't entirely unknown, such as that of the king William of Orange. In most cases, "Orange" refers to a specific place, in France.
Sources:
Further reading:
The History of the Norman Conquest of England
English Surnames: Essays on Family Nomenclature
The World's Great Classics: The History of Europe In the Middle Ages