Townsend, 33, played more than 200 games in the Football League for Cheltenham and Hereford, and has also played for Barnet, Tamworth and Rushall.
Manager Scott Dundas said: “After many months of trying, I’m delighted to finally get Towna to Chasetown. He is a local lad with still plenty to offer.
“Just from the training sessions, I can tell he is someone and something we have been missing and we look forward to working with him.”
Keep up-to-date with our exclusive email newsletters.
Subscribe