Faits : A. Le Ministère public de l'arrondissement de Lausanne instruit une procédure pénale contre A._, ressortissant kényan né en 1972, résidant à N._ et employé auprès de la société B._ AG, pour infraction grave à la loi fédérale sur les stupéfiants. Il lui est reproché d'avoir transporté depuis Bâle et remis à C._, dans la soirée du 24 avril 2017, 15 cylindres de cocaïne, d'un poids net total de 118,2 g et d'un taux de pureté de 79,9 %, en échange de 1'250 fr., dont 1'200 fr. ont été trouvés en sa possession lors de son interpellation. A._ a contesté les accusations portées contre lui, affirmant s'être borné à servir de chauffeur à C._ contre rémunération de Bienne à Lausanne sans savoir que celui-ci transportait de la drogue. Le 27 avril 2017, le Tribunal des mesures de contrainte du canton de Vaud a ordonné la détention provisoire de A._ pour une durée de trois mois, prolongée jusqu'au 24 octobre 2017. Par ordonnance du 19 octobre 2017, confirmée par la Chambre des recours pénale du Tribunal cantonal le 10 novembre 2017, il a prolongé la détention provisoire du prévenu pour une durée de trois mois, soit au plus tard jusqu'au 24 janvier 2018. B. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral, sous suite de frais et dépens, d'annuler l'arrêt cantonal du 10 novembre 2017 et d'ordonner sa libération immédiate, éventuellement de renvoyer la cause à la Chambre des recours pénale afin qu'elle prononce, au sens des considérants et à bref délai, sa mise en liberté moyennant les mesures de substitution à ordonner. Il a requis et obtenu la dispense de verser une avance de frais. La Chambre des recours pénale a renoncé à se déterminer et se réfère aux considérants de sa décision. Le Ministère public de l'arrondissement de Lausanne conclut au rejet du recours. Le recourant a répliqué brièvement.