Erwägungen:
1.
A._, afghanischer Staatsangehöriger, hält sich illegal in der Schweiz auf, nachdem das (damalige) Bundesamt (heute: Staatssekretariat) für Migration am 31. März 2010 auf sein Asylgesuch nicht eingetreten ist, ihn aus der Schweiz weggewiesen hat (bestätigt mit Urteil des Bundesverwaltungsgerichts vom 24. Juli 2012) und auf sein zweites Asylgesuch am 8. April 2013 nicht eingetreten ist. Mit Verfügung vom 12. Januar 2017 ordnete das Migrationsamt des Kantons Zürich die Eingrenzung von A._ auf das Gebiet des Bezirks Bülach bis zum 16. Juni 2018 an. Die Eingrenzung wurde mit Urteil des Zwangsmassnahmengerichts des Bezirksgerichts Zürich vom 31. März 2017 bestätigt. Das Verwaltungsgericht des Kantons Zürich hiess mit Urteil vom 2. Oktober 2017 die dagegen erhobene Beschwerde in einem vor Bundesgericht nicht mehr streitgegenständlichen Punkt gut, wies sie aber in Bezug auf die Eingrenzung ab; es auferlegte A._ die Hälfte der Gerichtsgebühr von Fr. 1'100.--, nahm diesen Anteil jedoch zufolge Gewährung der unentgeltlichen Rechtspflege unter Vorbehalt der Nachzahlungspflicht auf die Gerichtskasse; zudem sprach es dem Vertreter von A._ eine reduzierte Parteientschädigung von Fr. 1'000.-- zuzügl. MWST zu.
2.
A._ beantragt mit Beschwerde in öffentlich-rechtlichen Angelegenheiten vom 6. November 2017, die Eingrenzung aufzuheben. Zudem sei das angefochtene Urteil insoweit aufzuheben, als ihm die Hälfte der vorinstanzlichen Gerichtskosten auferlegt und ihm lediglich eine reduzierte Parteientschädigung zugesprochen wurde. Sodann beantragt er Erteilung der unentgeltlichen Rechtspflege. Verwaltungsgericht und Zwangsmassnahmengericht verzichten auf Vernehmlassung.
3.
Die Beschwerde in öffentlich-rechtlichen Angelegenheiten ist zulässig (Art. 82 lit. a, Art. 86 Abs. 1 lit. d, Art. 89 Abs. 1 und Art. 90 BGG), aber offensichtlich unbegründet und kann mit summarischer Begründung und im Übrigen durch Verweisung auf den angefochtenen Entscheid abgewiesen werden (Art. 109 Abs. 2 und 3 BGG).
4.
Gemäss Art. 74 Abs. 1 lit. b AuG kann die zuständige Behörde einer Person die Auflage machen, ein ihr zugewiesenes Gebiet nicht zu verlassen (Eingrenzung), wenn ein rechtskräftiger Weg- oder Ausweisungsentscheid vorliegt und konkrete Anzeichen befürchten lassen, dass die betroffene Person nicht innerhalb der Ausreisefrist ausreisen wird oder sie die ihr angesetzte Ausreisefrist nicht eingehalten hat. Der Beschwerdeführer bestreitet nicht, dass gegen ihn ein rechtskräftiger Wegweisungsentscheid vorliegt und er die ihm angesetzte Ausreisefrist nicht eingehalten hat. Die Voraussetzungen für eine Eingrenzung nach Art. 74 Abs. 1 lit. b AuG sind insoweit erfüllt.
5.
Der Beschwerdeführer bringt vor, eine Eingrenzung nach Art. 74 Abs. 1 lit. b AuG setze eine Untertauchensgefahr voraus; eine solche liege bei ihm nicht vor, weshalb die Eingrenzung unzulässig sei. Er beruft sich dafür auf Art. 7 Abs. 3 der EU-Rückführungsrichtlinie sowie die Botschaft vom 18. November 2009 (BBl 2009 8881, 8899) zur Revision von Art. 74 AuG vom 18. Juni 2010, womit diese Bestimmung umgesetzt wurde (AS 2010 5925, 5930). Die Rüge ist offensichtlich unbegründet: Art. 74 Abs. 1 lit. b AuG enthält nebst dem Vorliegen eines rechtskräftigen Weg- oder Ausweisungsentscheids zwei alternative Voraussetzungen, nämlich (1) konkrete Anzeichen, dass die betroffene Person nicht innerhalb der Ausreisefrist ausreisen wird, oder (2) die Nichteinhaltung der Ausreisefrist. Art. 7 Abs. 3 der EU-Rückführungsrichtlinie mitsamt dem darin enthaltenen Verweis auf die Vermeidung einer Fluchtgefahr bezieht sich einzig auf Massnahmen während der Dauer der Ausreisefrist, also auf die erste Variante. Ist hingegen die Ausreisefrist verstrichen (zweite Variante), wird weder nach der EU-Rückführungsrichtlinie noch nach dem klaren Wortlaut des AuG eine Flucht- oder Untertauchensgefahr vorausgesetzt (vgl. Urteil 2C_287/2017 vom 13. November 2017 E. 4.5.2, zur Publikation vorgesehen).
6.
Der Beschwerdeführer bringt weiter vor, die Eingrenzung sei unverhältnismässig; sie sei nicht geeignet, da der Vollzug der Wegweisung nicht konkret absehbar sei, weil die afghanischen Behörden nicht willens oder in der Lage seien, die erforderlichen Reisepapiere auszustellen.
6.1. Die Eingrenzung ist ungeeignet zur Erreichung ihres Zwecks und damit unzulässig, wenn sowohl die zwangsweise Ausschaffung als auch die freiwillige Rückreise in das Heimatland objektiv unmöglich sind (zit. Urteil 2C_287/2017 E. 2.3 und 4.8). Die Rückkehr kann objektiv unmöglich sein, wenn sich der Heimatstaat konsequent weigert, gewisse Staatsangehörige zurückzunehmen (vgl. Urteile 2C_252/2008 vom 10. Juni 2008 E. 2.2; 6B_85/2007 vom 3. Juli 2007 E. 2.2). Allerdings wäre eine solche Weigerung völkerrechtswidrig, da ein Staat seinen eigenen Staatsangehörigen das Recht, in sein Hoheitsgebiet einzureisen, nicht verwehren darf (Art. 12 Abs. 4 UNO-Pakt II; <ref-ruling> E. 4.1.2 S. 60 f.; zit. Urteil 6B_85/2007 E. 2.2). Nach Treu und Glauben ist im zwischenstaatlichen Verkehr zu vermuten, dass sich die Staaten völkerrechtskonform verhalten, solange nicht konkrete Anzeichen dafür bestehen, dass dies nicht der Fall ist (<ref-ruling> E. 3.3 S. 228 f.; <ref-ruling> E. 2.1.3 S. 167 f. und E. 2.4 S. 172 f.). Beruft sich ein Ausländer darauf, eine Ausreise sei nicht möglich, weil er keine Reisepapiere habe und sein Heimatstaat ihm die Rückkehr oder die Ausstellung von Papieren verweigere, so ist er aufgrund seiner Mitwirkungspflicht verpflichtet, dies zu belegen und zumindest darzulegen, dass er sich bei der zuständigen Vertretung darum bemüht hat (Urteile 2C_13/2012 vom 8. Januar 2013 E. 4.4.2; 2C_17/2017 vom 22. Mai 2017 E. 4.3.4). Bei ungenügender Mitwirkung kann eine Eingrenzung verhängt werden (Urteil 2C_54/2015 vom 22. Juni 2015 E. 4.1).
6.2. Die Vorinstanz hat erwogen, der Vollzug von Ausschaffungen nach Afghanistan sei nicht unmöglich, sondern namentlich auf Vollzugsstufe 1 gemäss Art. 28 Abs. 1 lit. a der Verordnung vom 12. November 2008 über die Anwendung polizeilichen Zwangs und polizeilicher Massnahmen im Zuständigkeitsbereich des Bundes (Zwangsanwendungsverordnung, ZAV, SR 364.3) möglich, d.h. als selbständige Rückreise. Zwar dauerten die Bemühungen betreffend Identifikation und Papierbeschaffung schon seit einiger Zeit an, sie seien aber immer noch im Gange und nicht aussichtslos. Der Beschwerdeführer bringt dagegen vor, es sei den schweizerischen Behörden nicht gelungen, die Wegweisungsentscheidung zu vollziehen. Das Wegweisungsvollzugsverfahren scheitere bisher an der Weigerung der afghanischen Behörden, gestützt auf seine im Asylverfahren eingereichte Tazkara Reisepapiere auszustellen. Bei der Befragung auf der afghanischen Botschaft vom 25. Januar 2017 habe er vorgetragen, lieber in der Schweiz bleiben zu wollen. Im Anschluss daran habe der afghanische Konsul angegeben, dass die Dossiers derjenigen Personen, die nicht freiwillig nach Afghanistan zurückkehren möchten, den zuständigen Behörden in Kabul weitergeleitet würden; die Identitätsabklärungen würden mehr Zeit in Anspruch nehmen als erwartet. Insgesamt versuchten die schweizerischen Migrationsbehörden seit über vier Jahren vergeblich, von den afghanischen Behörden Reisepapiere für ihn zu beschaffen.
6.3. Mit seinen Vorbringen scheint der Beschwerdeführer davon auszugehen, dass es primär Sache der schweizerischen Behörden sei, den Wegweisungsvollzug zu organisieren und für ihn Reisepapiere zu beschaffen. Er verkennt damit, dass er gestützt auf die rechtskräftige Wegweisung in erster Linie selber verpflichtet ist, seine Ausreise zu organisieren und bei der Beschaffung der erforderlichen Reisepapiere mitzuwirken (Art. 8 Abs. 4 AsylG; zit. Urteil 2C_287/2017 E. 4.7). Er hat jedoch seit dem rechtskräftigen Wegweisungsentscheid mehr als vier Jahre verstreichen lassen, ohne sich um die Beschaffung von Reisepapieren zu bemühen. Im Gegenteil hat er nach eigenen Angaben gegenüber den afghanischen Behörden angegeben, nicht freiwillig ausreisen zu wollen. Er hat damit nicht dargelegt, dass ihm die freiwillige Ausreise auch dann objektiv unmöglich wäre, wenn er sich selber in zumutbarem Ausmass um die Rückkehr und die Papierbeschaffung bemühen würde. Der Zweck der Eingrenzung besteht gerade darin, ihn zu rechtskonformem Verhalten zu veranlassen (vorne E. 6.1; zit. Urteil 2C_287/2017 E. 4.7.2).
7.
Schliesslich bringt der Beschwerdeführer vor, die Eingrenzung sei nicht erforderlich und nicht zumutbar, da er ohnehin einer faktischen Meldepflicht unterstehe und sich seit Jahren den Behörden stets zur Verfügung halte. Dazu ist zu bemerken, dass die Eingrenzung nach Art. 74 Abs. 1 lit. b AuG entgegen der offenbaren Auffassung des Beschwerdeführers nicht bloss bezweckt, dass sich der Betroffene den Behörden zur Verfügung hält; vielmehr dient sie - als milderes Mittel gegenüber der Durchsetzungshaft - dazu, den Weggewiesenen zur Befolgung seiner Ausreiseverpflichtung zu veranlassen (zit. Urteil 2C_287/2017 E. 4), und muss zu diesem Zweck so einschneidend wirken, dass das angestrebte Ziel erreicht wird (a.a.O. E. 5.3). Wie der Beschwerdeführer selber vorbringt, lebt er seit Jahren in der Schweiz, obwohl er einer faktischen Meldepflicht unterliegt. Diese war offensichtlich nicht wirksam genug, um ihn zur Respektierung seiner Ausreiseverpflichtung zu bewegen, so dass eine einschneidendere Massnahme angezeigt ist.
8.
In Bezug auf die Kostenregelung des angefochtenen Entscheids macht der Beschwerdeführer keine Rechtsverletzung unabhängig von der Hauptsache geltend.
9.
Die Beschwerde ist abzuweisen. Der Beschwerdeführer wird damit grundsätzlich kostenpflichtig. Das Gesuch um unentgeltliche Rechtspflege ist infolge Aussichtslosigkeit abzuweisen (Art. 64 Abs. 1 BGG). Umständehalber wird auf die Erhebung von Gerichtskosten verzichtet (Art. 66 Abs. 1 BGG).

Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen.
2.
Das Gesuch um unentgeltliche Rechtspflege wird abgewiesen.
3.
Es werden keine Gerichtskosten erhoben.
4.
Dieses Urteil wird den Verfahrensbeteiligten, dem Verwaltungsgericht des Kantons Zürich, 1. Abteilung, Einzelrichterin, und dem Staatssekretariat für Migration schriftlich mitgeteilt.
Lausanne, 17. Januar 2018
Im Namen der II. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Seiler
Der Gerichtsschreiber: Klopfenstein