Tuyến phòng thủ của quân Nam, Lý Thường Kiệt dựa vào sông núi, các đèo hiểm trở, các sông rộng và sâu. Từ trại Vĩnh Bình vào châu Lạng, phải qua dãy núi rậm, có đèo Quyết Lý, ở trên đường từ tỉnh Lạng Sơn đến Đông Mô ngày nay, vào khoảng làng Nhân Lý, ở phía bắc châu Ôn. Rồi lại phải qua dãy núi lèn (đá không phá đất), đá đứng như tường, ở giữa có đường đi rất hiểm: đó là ải Giáp Khẩu, tức là ải Chi Lăng, ở phía bắc huyện Hữu Lũng thuộc Lạng Sơn ngày nay. Về đường thủy, để chặn địch qua sông, quân Nam chỉ cần đóng thuyền ở bến Lục Đầu thì đi đường nào cũng rất tiện và chóng...
Lý Thường Kiệt đem chủ lực chặn con đường từ trại Vĩnh Bình đến sông Nam Định (sông Cầu) bằng cách đặt những doanh đồn và phục binh ở hai ải tiếp nhau: ải Quyết Lý ở phía bắc châu Quang Lang và ải Giáp Khẩu (Chi Lăng) ở phía nam châu ấy. Nếu hai phòng tuyến ấy bị tan, thì phải cố thủ ở phòng tuyến thứ ba, tức là nam ngạn sông Nam Định. Để cản quân Tống qua sông, Lý Thường Kiệt sai đắp đê nam ngạc cao như bức thành. Trên thành, đóng tre làm giậu, dày đến mấy từng. Thành đất lũy tre, nối với dãy núi Tam Đảo, đã đổi thế sông Nam Định và bờ nam ngạn ra một dãy thành hào, che chở cả vùng đồng bằng Giao Chỉ. Thành hào ấy dài gần trăm cây số, khó vượt qua và nhưng lại dễ phòng thủ hơn là một thành lẻ như thành Thăng Long.