This Ph.D. Thesis proposes new techniques for routing and mobility management for Internet of Things (IoT). In the future IoT, everyday mobile objects will probably be connected to the Internet. Currently, static IoT's devices have already been connected, but handle mobile devices suitably still being an open issue in IoT context. Then, solutions for routing mobility detection, handover, and mobility management are proposed through an algorithm that integrates Machine Learning (ML) and mobility metrics to figure out devices' mobility events, which we named Dribble. Also, an IPv6 hierarchical routing protocol named Mobile Matrix to boost efficient (memory and fault tolerance) end-to-end connectivity over mobility scenarios. The Thesis contributions are supported by numerous peer-reviewed publications in national and international conferences and journals included in ISI-JCR. Also, the applicability of this Thesis is evident by showing that our results overcome state-of-the-art in static and mobile scenarios, as well as, the impact of the proposed solutions is a step forward in at least two new research areas so-called Internet of Mobile Things (IoMT) and Social IoT, where devices move around and do social ties respectively. Moreover, during the Ph.D. degree, the author has contributed to different computer network fields rather than routing by publishing in areas like social networks, smart cities, intelligent transportation systems, software-defined networks, and parallel computing.