Hannibal was not black by today's standards. The Romans were a white race and referred to darker skinned Africans as Ethiopians. Hannibal's homeland, Carthage, was located in northern Africa, and the residents there were primarily lighter skinned. However, some did intermarry with the darker skinned Africans to the south.
Hannibal was Carthaginian, and the race of Carthaginians were a Semitic people who came from the ancient Near East. Modern Arabs and Jews share a similar skin color, so Hannibal more likely looked Arabic than he did black. Members of the ancient world adhered more to empires than they did to race, so Hannibal is identified by his hometown.