刘邦平定天下,各路诸侯都已归顺,但也有些诸侯王因一言不合就反汉,先是燕王臧荼造反,攻占代地,刘邦亲自率军前去讨伐,擒获了燕王臧荼,斩首示众。后有利几造反,刘邦又亲自带兵去讨伐,利几败逃。
利几原是项羽的部将,项羽失败时利几是陈县县令,没有跟随项羽,逃离陈县归降了刘邦,刘邦把他封在颖川为侯。刘邦打败了燕王臧荼回到洛阳后,召见全部在册的列侯,因利几以前与燕王臧荼有交往,心里害怕,不敢去见刘邦,就造反了,被刘邦追杀。
最让刘邦头痛的是韩王信,韩王信与匈奴勾结,在太原谋反。原来韩王信是韩襄王庶出后代,身高八尺五寸,伟岸英豪。沛公带部队攻打阳城时,派张良以韩国司徒身份,收复韩国原有土地时,得到了韩王信,任命他为韩国将军,带领他的部队随刘邦进入武关。
沛公被项羽立为汉王,韩王信追随沛公进入汉中,曾劝说汉王趁着气势强盛东进,与诸侯争天下。汉王回军平定三秦时,答应将韩信封为韩王,先委任他为韩太尉,让他带兵去攻打韩国土地。
此时韩地没有王,听说汉王派韩王信去攻打韩地,项羽才命令吴县县令郑昌做韩王,以抵抗韩王信的攻击。韩王信不负所望,攻占韩国十几座城池。汉王抵达河南,韩王信在阳城猛烈攻击韩王郑昌。郑昌投降,汉王刘邦封韩王信为韩王。
韩王信率领部队跟随汉王防守荥阳,楚汉相峙不下。等到楚王攻下荥阳,韩王信为了保命,投降了项羽。等有了机会,韩王信逃离荥阳,又回到汉王身边,汉王再次封他为韩王,国都建在颖川。
刘邦一直认为韩王信骁勇无比,可堪大用。而令刘邦感到头痛的是西北边塞,常受匈奴骚扰。刘邦便命令韩王信迁移到太原以北地区,以防御匈奴侵扰,建都晋阳。韩王信上书刘邦说:我的封国十分靠近边界,匈奴多次入侵,晋阳距离边境比较远,请允许我建都马邑。
刘邦答应了他,韩王信就把都城移到马邑。韩王信把都城建在马邑,引起了匈奴冒顿单于的不满,便率兵包围了马邑。韩王信多次派使者到匈奴见冒顿单于,请求和解,无果。韩王信只好向刘邦请求援兵,刘邦一方面派人带兵前来救助,又怀疑韩王信多次私自派使者前去匈奴的地方,有叛变