Faits : A. Par jugement du 22 juin 2017, le Tribunal correctionnel de l'arrondissement de Lausanne a libéré X._ des chefs d'accusation de faux dans les certificats et d'infraction grave à la LStup (I), a constaté qu'il s'est rendu coupable d'infraction à la LEtr (II), l'a condamné à une peine privative de liberté de trois mois et a constaté que cette peine est entièrement compensée par la détention préventive subie (III), a ordonné sa mise en liberté immédiate (IV), a révoqué le sursis accordé par le procureur valaisan le 17 avril 2014 et ordonné l'exécution de la peine pécuniaire de 60 jours-amende à 30 fr. le jour (V), a renoncé à révoquer la libération conditionnelle accordée à X._ le 3 mars 2013 (VI), a refusé d'octroyer à X._ une indemnité au sens de l'art. 429 al. 1 let. c CPP (VIII). Le tribunal de première instance a libéré X._ du chef d'infraction à la LStup, au bénéfice du doute. Il a retenu la thèse, soutenue par X._, selon laquelle il avait saisi et jeté certains emballages de drogue dans un mouvement de colère contre son frère, dans l'appartement de celui-ci, indigné qu'il consomme et trafique des stupéfiants, ce qui expliquait la présence de son ADN sur certains emballages incriminés. Premièrement, cette explication était corroborée par les déclarations de sa compagne et de son frère. Deuxièmement et surtout, elle ne pouvait être tenue pour invraisemblable en raison d'éventuelles considérations techniques ou scientifiques. S'agissant de la drogue en possession de la compagne de X._, le tribunal a également admis la thèse selon laquelle il avait pu toucher les sachets incriminés dans un autre contexte, avant qu'ils servent à conditionner la drogue. B. Statuant sur appels du ministère public et de X._ par jugement du 18 octobre 2017, la Cour d'appel pénale du Tribunal cantonal vaudois a partiellement admis le premier et a rejeté le second. En substance, outre l'infraction à la LEtr elle a constaté que X._ s'était rendu coupable d'infraction grave à la LStup. Elle a confirmé le jugement de première instance quant à l'acquittement du chef de prévention de faux dans les certificats. Compte tenu de la condamnation pour infraction grave à la LStup, elle a révoqué la libération conditionnelle accordée le 3 mars 2013, a condamné X._ à une peine privative de liberté d'ensemble de cinq ans et demi, sous déduction de la détention subie et révoqué le sursis accordé le 17 avril 2014. B.a. La cour cantonale a en substance retenu que, entre juillet 2015 et le 19 septembre 2016, X._ a participé à un trafic d'héroïne avec son frère cadet A._ et B._, ainsi qu'avec son amie C._, portant sur un total d'au moins 1133 g d'héroïne, correspondant à 310 g d'héroïne pure. Elle s'est fondée sur la présence du profil ADN de X._ sur différents conditionnements de la drogue saisie et sur l'identité de source de la drogue dans chaque trafic. Elle a écarté les explications données par X._, corroborées par son frère et sa compagne, les jugeant mensongères. B.a.a. A Lausanne, le 30 juillet 2015, un total de 842,1 g d'héroïne (correspondant à 258,1 g d'héroïne pure), dont un « pain » de 509 g (173,1 g d'héroïne pure) a été saisi dans l'appartement occupé par A._ et B._. Le profil ADN de X._, en mélange avec celui de A._, était présent sur la face extérieure du ruban adhésif entourant le « pain » d'héroïne, lui-même emballé sous vide dans un plastique. L'entier de la drogue saisie dans l'appartement présentait le même profil chimique. Le même jour, B._ a été interpellé à Lausanne alors qu'il était en possession de 103,4 g d'héroïne (33,6 g d'héroïne pure), conditionnés dans des emballages constitués de deux sachets bleus. Le profil ADN de X._ était présent sur ces sachets, lesquels contenaient une héroïne dont la composition chimique était la même que celle de la drogue saisie dans l'appartement. B.a.b. A Corsier-sur-Vevey, le 19 septembre 2016, lors de son interpellation, X._ était accompagné de son amie C._, laquelle détenait deux sachets de 0,4 et 0,8 g d'héroïne. Lors de son interpellation, X._ et son amie étaient en possession de sept téléphones portables, dont les abonnements étaient établis sous des noms fictifs. A Aigle, le 5 octobre 2016, date à laquelle X._ était déjà détenu, C._ a été interpellée alors qu'elle était en possession de 187,1 g d'héroïne (18,5 g d'héroïne pure). Le profil ADN de X._ était présent sur l'extérieur et la partie ouverture de l'avant-dernier sachet contenant 178,2 g d'héroïne (17,2 g d'héroïne pure). Une partie de la drogue (0,4 g) saisie le 19 septembre 2016 et la drogue saisie le 5 octobre 2016 présentaient le même profil chimique. B.b. B._, A._ et C._ ont été condamnés, séparément, par jugements des 22 avril 2016, 11 juillet 2016 et 29 mai 2017, notamment pour infraction à la LStup en raison de ces faits. L'héroïne en leur possession était destinée à la vente (cf. pce 69, jugement du 22 avril 2016 concernant B._, p. 4; pce 95, jugement du 11 juillet 2016 concernant A._, p. 11; pce 94, annexe au jugement du 29 mai 2017 concernant C._, p. 2). B.c. X._ a été condamné, par jugement du 30 avril 2002, à quatre ans de réclusion et, par jugement du 9 septembre 2008, à une peine privative de liberté d'ensemble de huit ans, notamment pour crimes contre la LStup. Il a été libéré conditionnellement le 3 mars 2013, avec délai d'épreuve jusqu'au 25 septembre 2015. Le 17 avril 2014, il a été condamné pour entrée illégale et faux dans les certificats, dès lors qu'il était notamment porteur d'un faux permis de conduire italien lorsqu'il se dirigeait en Italie, en tant que passager d'un véhicule conduit par un compatriote. Lors du contrôle des gardes-frontières, une quantité de 1,036 kg de haschich a été découverte dissimulée derrière le tableau de bord de la voiture. X._ a été mis hors de cause par le conducteur pour ce qui est de ces stupéfiants. C. X._ forme un recours en matière pénale auprès du Tribunal fédéral contre le jugement cantonal et conclut, avec suite de frais et dépens, à sa réforme en ce sens que le jugement de première instance est confirmé sous réserve des conclusions prises en appel. Subsidiairement, il conclut à l'annulation de la décision cantonale et au renvoi de la cause à la cour cantonale pour nouveau jugement. Il requiert l'octroi de l'assistance judiciaire.