明朝在灭掉元朝以后,残余的蒙古贵族逃回旧地,但仍然不断地南下骚扰掠夺;后来在东北又有女真族的兴起,为了防御蒙古、女真等游牧民族的骚扰,明代十分重视北方的防务。早在朱元璋即将统一全国的时候,就采纳了休宁人朱升“高筑墙、广积粮、缓称王”的建议。高筑墙就是筑城设防备战之意。
明朝不仅对全国各州府县的城墙都修筑得十分坚固,全部用砖包砌;而且对长城的修筑工程更为浩大,在明朝的200多年中就没有停止过对长城的修筑和巩固长城的防务。可以这样说,万里长城这件从春秋战国开始修筑,经秦始皇连成一体的伟大工程,直到明朝才最终完成。
明朝还在重要的关隘地方,特别是在当时的京城北京的北面居庸关、山海关、雁门关一带修筑了好几重城墙,多的达到20多重;并在长城南北设立了许多堡城、烟墩(烽火台)用来瞭望敌况,传递军情。正德年间(1506-1521年),还在宣府、大同一带修筑了烽堠3000多所,在山海关至居庸关长城线上修筑墩台1000多座。这些烽堠、墩台与长城南北的许多城防、关隘等共同构成一首城堡相连、烽火相望的万里防线。
为了加强长城的防务和指挥调遣长城沿线的兵力,并便于经常修缮长城关隘工程,明代把长城沿线划分成九个防守区段,称之为“九边”;每边设镇守(总兵官),谓之九边十一镇。九边十一镇的长城,长度共计约7300多千米。
十一镇分别管辖的长城范围、总兵驻地如下:辽东镇:总兵驻广宁(今辽宁北镇),管辖的长城东起丹东附近的鸭绿江畔,西至山海关,全长970余千米。蓟镇:总兵驻三屯营(今河北迁西),管辖的长城东起山海关,西至慕田峪(今北京怀柔县境内),全长880余千米。昌镇:总兵驻地昌平,管辖的长城东起慕田峪,西至紫荆关,全长230千米。
真保镇:总兵驻保定,管辖的长城北起紫荆关,南至故关,全长390千米。宣府镇:总兵驻宣化,管辖的长城东起居庸关,西至西洋河(今山西大同东北),全长511余千米。大同镇:总兵驻大同,管辖的长城东起镇口台(今山西天镇东北),西至鸦角山(今山西偏关东北),全长335千米。太原镇:也称山西镇,总兵驻偏关,管辖的长城西起保德、河曲的黄河岸边,从偏关、雁门关、平型关等而达黄榆岭,全长800余千米。因此镇在大同、宣府两镇长城之内,所以又把这一线长城称作内长城,此线长城多石墙。
延绥镇:也称榆林镇,总兵驻榆林,管辖的长城东起黄甫川(今陕西府谷境内),西至花马池(今宁夏盐池县),全长850千米。宁夏镇:总兵驻银川,管辖的长城东起大盐池(今宁夏盐池县境内),西至兰州,全长约1000千米。固原镇:总兵驻固原,管辖的长城东起靖边与与榆林镇长城相接,西至皋兰与甘肃镇长城相接,全长约500千米。甘肃镇:总兵驻张掖,管辖的长城东起兰县(今兰州),西至嘉峪关祁连山下,全长约800千米。
明长城的关口很多,每镇所辖关口多至数百,十一镇长城的关口总计在1000以上。其中著名的也有数十座。自居庸关以西,明长城分南北两线,到山西偏关附近的老营相合,被称为内、外长城或里、外长城。
里长城从居庸关西南,经河北易县、涞源、阜平而进入山西的灵丘、浑源、应县、繁峙、神池而至老营。外长城即自居庸关西北经赤城、崇礼、张家口、万全、怀安而进入山西的天镇、阳高、大同,沿内蒙古、山西交界处达于偏关、河曲。此位于河北、北京、山西、内蒙古境内的明代内、外长城是明代首都北京的西北屏障,对于防御自西北来的威胁,相当重要。
因此,此处的长城工程亦甚雄伟坚固。关隘险口也很多,著名的内、外三关即长城线上的6个重要关口。靠近当时首都北京的居庸关、倒马关、紫荆关是为“内三关”。自此往西的雁门关、宁武关、偏头关是为“外三关”。这内外三关成了明王朝保卫京师和东南地区的重要险阻,经常派重兵把守。