EtymologyThe English word snake comes from Old English snaca, itself from Proto-Germanic *snak-an- (cf. German Schnake "ring snake," Swedish snok "grass snake"), from Proto-Indo-European root *(s)nēg-o- "to crawl, creep," which also gave sneak as well as Sanskrit nāgá "snake." The word ousted adder, as adder went on to narrow in meaning, though in Old English næddre was the general word for snake. The other term, serpent, is from French, ultimately from Indo-European *serp- (to creep), which also gave Greek érpo (ερπω) "I crawl."
A phylogenetic overview of the extant groups