洪武二十一年(1388)的捕鱼儿海一战,蓝玉击破脱古思帖木儿。脱古思帖木儿西逃之后,被阿里不哥的后裔也速迭儿用弓弦缢杀。此后蒙古进入了东西两部,即蒙古本部(鞑靼)和瓦剌的分裂期。
永乐初年,朱棣对蒙古奉行绥抚政策,利用鞑靼和瓦剌互相攻伐的机会,在其中搞平衡,同时对双方进行拉拢。
永乐六年(1408年),瓦剌为了能够对鞑靼取得战略优势,专门派出使节随同明朝使臣回访朝廷,对明朝进贡马匹,并请明朝赐予封号和印信。朱棣为了进一步确认瓦剌与鞑靼的状况,并未立刻答应瓦剌方面的要求。
同年冬天,鞑靼发生变乱,本雅失里取代鬼力赤成为大汗,故此朱棣在次年五月正式册封瓦剌三王马哈木、太平、把秃孛罗三人分别为顺宁王、贤义王、安乐王,希望利用瓦剌和鞑靼之间的矛盾。而新任大汗本雅失里则奉行对明的强硬政策,杀死明朝使臣,还想袭击明朝控制之下的兀良哈三卫地区,使得明蒙之间的关系骤然紧张起来。
永乐七年(1409年)六月,郭骥使团中的随行人员百户李咬住等人从汗庭逃脱,向朱棣报告了本雅失里将郭骥斩杀,准备进攻兀良哈三卫的消息。朱棣大怒,当下命令淇国公丘福为征虏大将军,任总兵官,武城侯王聪、同安侯火真为左右副将军,靖安侯王忠、安平侯李远为左右参将,统率精兵10万征讨本雅失里。朱棣还严正告谕本雅失里,如果敢于抵抗,自己将御驾亲征。
本雅失里认为明军刚刚经过一场大败,应当不会再重新集结,正好秋天已至,可以越过大漠,到漠南草原的东南部去过冬,于是南下骚扰明边。
朱棣接到丘福兵败身死的消息,大出意料之外,却不得不文过饰非,赶紧写信给瓦剌顺宁王马哈木等人,把败因完全推给丘福的错误决断,并且警告马哈木一定要小心本雅失里利用从明军俘虏来的器械衣甲,伪装成明军对瓦剌发起攻击,不要使明朝与瓦剌的关系受到影响。对内更是耻于言败,对蒙军的反击只字不提,但要求山西等处抓紧收割秋粮,并且加筑防御工事,随时准备应对蒙古入侵。
至当年十月,作为北京北端重要藩篱的开平卫,也就是元代的元上都,收到的通知竟然是要求如果有事上报朝廷,相关人员必须选择走小路进京,不可以走大路,如果有自称朝廷的使臣来到,也必须要详细盘查,验明正身,可见当时气氛的紧张。
如果我们查阅李朝的《李朝实录》等相关史料,也会发现在这一年十一月,其通事官孔明义回报蒙古军队已经接近北京,形势非常严峻,辽东地区则是明军全数退往内地城塞之中,不敢出外巡查。
《李朝实录》更记载了永乐八年(1410年)正月蒙古军队曾经活动于辽东开元(今吉林省长春市附近)等地,明军几次出兵,都被蒙军击败。正月初二日,蒙军又攻打了辽东都司的北门,对城外居民大肆抢掠之后才撤退。还说当时辽东部队1万人左右,在进京路上被蒙古军队在山海关一带伏击,明军大败,死伤过半。这些记载在明代史料中都无法看到,有可能是朝鲜方面探听到的传闻,不无夸大之处,但是也说明蒙军活动确实也已深入到了辽东一带,可以想见丘福之败以后明朝边防压力之大。
为了扭转被动局面,朱棣终于下定决心亲自领兵出征。永乐八年(1410年)正月十二日,朱棣亲自主持祭祀,向天地宗庙社稷祷告出塞亲征一事,然后在二月十日率军出发。
永乐八年(1410)开始,到永乐二十二年(1424),朱棣先后进行了五次亲征蒙古,最终于永乐二十二年七月十八日(1422年8月12日),病逝于途中的榆木川。
明成祖五次亲征对盘踞在漠北的北元残余势力鞑靼、瓦剌和兀良哈三个部落的战争。致使蒙古势力进一削弱,维护了明朝边境的安宁,明朝成了瓦剌和鞑靼的宗主国,从此,明朝不再承认蒙元政权,具有重要转折意义。同时也使明朝精疲力竭,明成祖朱棣亦在第五次亲征得胜回朝途中病死。
虽然明成祖北伐之后明朝无论在国力还是在军事方面,都据有绝对的优势,但问题却出在了撤大宁都司、开平、三降城、东胜、威虏卫、威远卫、白城子千户所等漠南诸卫的事情上。朱棣认为设置卫所是要等到明军消灭岭北行省的残元势力继承确定元朝的北方边界后再办的事情,但是由于明成祖突然死在了北伐的路上,当年洪武帝在漠南设置的诸卫所皆未来得及恢复。宣德时,北方游牧民族通过卫所旧地对明朝的威胁日增。