後來匈奴向北征服了渾庾、屈射、丁零、鬲昆、薪犁等國。于是匈奴的貴族和大臣都服氣了,認為冒頓單于賢能。
當時漢朝剛剛平定中原,調韓王信到代郡,在馬邑創建都城。匈奴大舉圍攻馬邑,韓王信投降了匈奴。匈奴得到了韓王信,順勢帶兵向南越過句注山,攻打太原,來到晉陽城下。
高帝親自帶兵前去讨伐匈奴。正趕上冬季天氣十分寒冷,天降大雪,凍掉手指的士兵多達十分之二三,于是冒頓佯裝戰敗逃跑,引誘漢朝的軍隊。
漢軍追擊冒頓,冒頓就把他的精銳部隊隐藏起來,隻顯示他的老弱殘兵,于是漢軍全員出動,大多數是步兵,總計三十二萬人,向北追擊。
高帝率先趕到平城,步兵還沒有完全抵達,冒頓派出四十萬名精銳騎兵把高帝包圍在白登山,七天時間裡,漢軍内外得不到救援和糧饷。
匈奴的騎兵部隊,西方全是白馬,東方全是青馬,北方全是黑馬,南方全是紅馬。
高帝于是派使者暗中送豐厚的禮物給匈奴阏氏,阏氏于是對冒頓說:“兩個君主不應該相互圍困。現在即使得到漢朝的土地,而單于最終也不能居住在那裡。況且漢王也有神靈保佑,單于考慮一下這件事。”
冒頓和韓王信的部将王黃、趙利約定出兵時間,然而王黃、趙利的軍隊沒有按時趕來,懷疑他們和漢朝有陰謀,也就采納了阏氏的建議,于是解除了包圍圈的一角。
這時高帝命令士兵都拉滿弓将箭頭對外,從打開的一角直沖出去,終于和大軍會合了,同時冒頓也帶兵撤退了。
漢朝也領兵回來,派劉敬去締結和親的盟約。
此後韓王信擔任匈奴的将軍,與趙利、王黃等人多次違背盟約,侵犯劫掠代郡、雲中郡。
沒過多久,陳豨也反叛了,又與韓信共同謀劃進攻代郡。
漢朝派樊哙去讨伐他們,重新攻占了代、雁門、雲中等郡縣,軍隊沒有出邊塞。
這時匈奴因為有很多漢朝過去的降将,所以冒頓經常來往于代地侵擾劫掠。
于是漢朝擔心這件事,高帝就派劉敬将封為公主的皇族女子獻給匈奴作單于阏氏,每年送給匈奴一定數量的棉絮、絲帛、酒水、糧食等,約定為兄弟之國來和親,冒頓于是暫時停止了侵擾。
後來燕王盧绾又反叛了,率領他的同黨幾千人投降了匈奴,往來于上谷以東地區侵擾。