自从在秦始皇统治时期打败匈奴以后,北方平静了十几年。到秦灭亡之后,中原发生了楚汉相争,匈奴就乘机一步一步向南打过来。
汉高祖的时候,匈奴的冒顿单于带领了四十万人马包围了韩王信的封地马邑(今山西朔县)。韩王信抵挡不住匈奴的强大攻势,向冒顿求和。汉高祖得到这个消息,派使者责备韩王信。韩王信害怕汉高祖办他的罪,向匈奴投降了。
冒顿占领了马邑,又继续向南进攻,围住晋阳。汉高祖亲率汉军赶到晋阳,和匈奴对敌。
公元前200年冬天,天空下着大雪,气候特别冷。中原的兵士没碰到过这样冷的天气,冻伤了不少人,有的人竟冻得掉下了手指。但是,汉朝的军队和匈奴兵刚一交战,匈奴兵就败走,一连打赢了几战。后来,听说冒顿单于逃到代谷(今山西代县西北部)。
汉高祖进了晋阳,派出兵士去侦察,回来的人都说冒顿的部下全是一些老弱残兵,连他们的马都是挺瘦的,如果趁势打过去,准能打胜仗。汉高祖还怕这些兵士的侦察不可靠,又派刘敬到匈奴营地去刺探。
刘敬回来说:“我们看到的匈奴人马的确都是些老弱残兵,但我认为冒顿一定是把精兵埋伏起来,陛下千万不能上这个当。”
汉高祖大怒,说:“你胆敢胡说八道,想阻拦我进军。”说着,就把刘敬关押起来。
汉高祖率领一队人马刚到平城(今山西大同东北部),突然四周涌出无数匈奴兵来,个个兵强马壮,原来的老弱残兵全不见了。汉高祖拼命杀出一条血路,退到平城东面的白登山。
冒顿单于派出四十万精兵,把汉高祖围困在白登山。周围的汉军没法救援,汉高祖的一部分人马在白登,整整被围了七天,没法脱身。
陈平派了一个使者带着黄金、珠宝去见冒顿的阏氏(音yānzhī,就是匈奴的王后),请她在单于面前说些好话。阏氏一见这么多的礼物,心里挺高兴。
当天晚上,阏氏对冒顿说:“我们占领了汉朝地方,没法长期住下来,再说,汉朝皇帝也有人会救他,咱们不如早点撤兵回去吧!”冒顿听了阏氏的话,第二天一清早,就下令将包围网撕开一角,放汉兵出去。
第二天清早,天正下着浓雾,汉高祖悄悄地撤离了白登。陈平还不放心,叫弓箭手朝着左右两旁拉满了弓,保护汉高祖下山。汉高祖提心吊胆走出了匈奴的包围圈,快马加鞭,一口气逃到广武。他定了定神,首先把刘敬放出来,说:“我没听你的话,以致在白登被匈奴围了起来,险些不能和你见面了。”
汉高祖逃出了虎口,自己知道没有力量再去征服匈奴,只好回到长安。以后,匈奴一直侵犯北方,很让汉高祖担忧国家的安危。他问刘敬该怎么办?刘敬说:“最好采用‘和亲’的办法,两方讲和,结为亲戚,彼此可以和和平平地过日子。”
汉高祖同意刘敬的意见,派刘敬到匈奴去说亲,冒顿同意了。汉高祖挑了一个宫女所生的女儿,称作大公主,送到匈奴去,同时,又送去许多特产及粮食。冒顿就把她立为阏氏。
从那时候起,汉朝开始采取“和亲”的政策,跟匈奴的关系暂时缓和了起来。