建安十年夏四月,黑山贼张燕率领他的十余万部众前来归降,曹操封他为列侯。此时,故安的赵犊、霍奴等人起兵作乱,杀死了幽州刺史和涿郡太守。三郡乌丸也趁机发兵,在犷平攻打鲜于辅。(《续汉书·郡国志》记载:犷平是一个县名,隶属于渔阳郡。 )同年秋八月,曹操亲自率军征讨。曹军势如破竹,迅速斩杀赵犊等人,随后渡过潞河,驰援犷平。三郡乌丸的军队见曹操大军前来,吓得仓皇逃窜,逃出了塞外。
九月,曹操颁布命令:“结党营私、相互勾结,这是古代圣贤最为痛恨的行为。我听说冀州有这样的风俗,父子各为一派,相互诋毁或赞誉。从前,直不疑并没有兄长,世人却传言他与嫂子私通;第五伯鱼三次娶孤女为妻,却被人污蔑殴打岳父;王凤专权,谷永却将他比作申伯进行夸赞;王商提出忠诚的建议,张匡却诬陷他搞歪门邪道。这些都是颠倒黑白、欺天瞒君的行径。我决心整顿风俗,如果不根除这四种不良现象,我会感到羞愧。”冬十月,曹操率军回到邺城。
当初,袁绍任命外甥高干为并州牧。曹操攻克邺城后,高干归降,曹操便让他继续担任并州刺史。高干得知曹操准备征讨乌丸,竟然举州反叛。他扣押了上党太守,发兵据守壶关口。曹操得知后,派遣乐进、李典前去攻打。高干抵挡不住,退回壶关城坚守。
建安十一年春正月,曹操决定亲自征讨高干。高干听闻曹操亲自率军前来,心中十分恐惧,他留下部将守城,自己则逃往匈奴,向匈奴单于求救。但匈奴单于不愿卷入这场纷争,拒绝了高干的请求。曹操大军将壶关围困了三个月,最终成功攻克。高干走投无路,只好逃往荆州。在上洛,都尉王琰将高干捕获并斩杀。
建安十一年秋八月,曹操向东征讨海贼管承。曹军抵达淳于后,曹操派遣乐进、李典出击。乐进和李典作战勇猛,指挥得当,很快便击败管承。管承见势不妙,率残部逃入海岛。曹操为了加强对地方的管理,对区域进行调整,割取东海郡的襄贲、郯、戚三县,并入琅邪郡,同时撤销了昌虑郡。(《魏书》记载,十月乙亥日曹操下达命令:“治理国家、统御众人,设立辅佐大臣,最忌讳的就是当面顺从。《诗经》中说‘听从并采用我的谋略,或许就不会有大的悔恨’,这确实是君臣之间恳切的期望。我肩负重任,常常担心决策失误,近年来,却很少听到好的谋略,难道是我招揽贤才不够勤勉的过错吗?从今以后,各位掾属、治中、别驾,每月初一都要指出我的过失,我会认真阅览。” )
三郡乌丸趁着天下大乱,攻占了幽州,掳掠了汉朝百姓十多万户。袁绍为了拉拢乌丸,将他们的首领都封为单于,还把自己家族的女子认作女儿,嫁给这些单于。其中,辽西单于蹋顿势力最为强大,袁绍对他也格外厚待。因此,袁尚兄弟在战败后便逃到他那里,借助他的力量,多次侵扰汉朝边塞。曹操决心征讨乌丸,为了保障行军和粮草运输的便利,他下令开凿渠道。一条是从呼沱河引入泒水(“泒”读音为孤),命名为平虏渠;另一条是从泃河口(“泃”读音为句)开凿,引入潞河,命名为泉州渠,以此连通大海。
建安十二年春二月,曹操从淳于返回邺城。丁酉日,曹操颁布命令:“我兴起义兵,讨伐暴乱,至今已有十九年。这些年来,我所征讨的敌人都被一一攻克,这难道是我一个人的功劳吗?这都是贤能的文臣武将们共同努力的结果啊!如今天下尚未完全平定,我要与各位贤才一同完成平定天下的大业。如果只是我独自享受功劳,我又怎能安心呢!现在,尽快评定功劳,进行封赏。”于是,曹操大封功臣,二十多人被封为列侯,其余的人也按照功劳大小依次受封。对于那些在战场上为国捐躯将士的遗孤,曹操也给予了妥善的抚恤,根据具体情况,给予不同程度的照顾。(《魏书》记载曹操的命令:“从前,赵奢、窦婴身为将领,得到千金赏赐后,很快就将其散发给众人,所以他们能够成就大功,美名流传后世。我每次读到他们的事迹,都十分钦佩他们的为人。我与各位将士、文臣一同征战,有幸依靠贤才们毫无保留地出谋划策,众人竭尽全力,这才使我能够平定艰险、扫除祸乱,还让我得到了三万户食邑的丰厚赏赐。我追思窦婴散金的大义,现在把我所得到的租赋分给各位将领、属官,以及曾经在陈、蔡两地戍守的士兵,希望以此来酬谢大家的辛劳,而不是独自享受这份厚赏。对于为国捐躯将士的遗孤,也要用租谷来抚恤他们。如果以后年成丰收、物资充足,租赋全部收齐后,我会和大家一起分享更多的赏赐。” )
曹操准备向北征伐三郡乌丸,众将领纷纷进谏道:“袁尚不过是个逃亡的败将,那些夷狄之人贪婪且不讲情义,怎么会为袁尚所用呢?如今我们若是深入敌境去征讨,刘备必定会劝说刘表趁机袭击许都。万一发生变故,那后果将不堪设想,到时候后悔都来不及了。”唯有郭嘉认为刘表必定不会重用刘备,极力劝说曹操出兵。曹操权衡利弊后,采纳了郭嘉的建议。
建安十二年夏五月,曹操大军抵达无终。然而到了秋七月,天降大雨,道路被洪水淹没,沿海的道路无法通行。就在曹操为此事发愁时,田畴主动请命担任向导,曹操欣然应允。在田畴的带领下,曹军从卢龙塞出发。塞外的道路早已断绝,无法通行,曹操便下令开山填谷,硬生生地开辟出一条五百多里的道路。大军先后经过白檀、平冈,穿越鲜卑的王庭,一路向东,直指柳城。
当曹军距离柳城还有二百里时,乌丸才得知消息。袁尚、袁熙与蹋顿、辽西单于楼班、右北平单于能臣抵之等人,率领数万骑兵前来迎战。八月,曹操大军登上白狼山,突然与乌丸的大军相遇。乌丸军队人数众多,气势汹汹。此时,曹操的辎重部队还在后面,军中身披铠甲的士兵较少,左右将士见状,都十分惊恐。曹操登上高处,观察到乌丸军队阵列不整,当机立断,下令出兵攻击,并任命张辽为先锋。张辽勇猛无比,率领曹军如猛虎下山般冲向乌丸军。在曹军的猛烈攻击下,乌丸军队顿时大乱,全线崩溃。此役,曹操大获全胜,斩杀了蹋顿以及众多有名的王,胡人、汉人投降的多达二十多万。
辽东单于速仆丸以及辽西、右北平的诸多豪强,舍弃了自己的族人,与袁尚、袁熙一起逃往辽东,此时他们身边还有数千骑兵。起初,辽东太守公孙康仗着地处偏远,不肯归服曹操。曹操攻破乌丸后,有人劝说曹操趁机征讨公孙康,这样就能擒获袁尚兄弟。曹操却胸有成竹地说:“我不用派兵,公孙康自然会把袁尚、袁熙的首级送来。”九月,曹操率领大军从柳城返回。(《曹瞒传》记载,当时天气寒冷又干旱,方圆二百里内都没有水源,军队粮食也匮乏,无奈之下,曹操只得下令杀了数千匹马作为军粮,又挖地三十多丈才找到水。大军返回后,曹操询问之前劝谏他不要出征的人,众人都不知道曹操的意图,心里十分害怕。曹操却重重地奖赏了他们,说道:“我这次出征,是冒着危险去碰运气,虽然取得了胜利,但这是上天在帮助我,不能把这种情况当作常态。你们的劝谏,才是万全之策,所以我要奖赏你们,以后有什么想法不要有所顾虑,尽管说出来。” )果不其然,公孙康斩杀了袁尚、袁熙以及速仆丸等人,并将他们的首级传送过来。
众将领对此感到十分疑惑,有人问道:“您刚一撤兵,公孙康就斩杀袁尚、袁熙并送来首级,这是为什么呢?”曹操笑着解释道:“公孙康向来忌惮袁尚等人,我若是逼得太紧,他们就会联合起来抵抗;我放松一些,他们就会自相残杀,这是形势所决定的。”十一月,曹操大军抵达易水,代郡乌丸代理单于普富卢、上郡乌丸代理单于那楼,带着他们的名王前来祝贺曹操胜利归来。
建安十三年春正月,曹操回到邺城,下令修建玄武池,用来训练水军。(“肄”,读音为以四反。《三苍》解释:“肄,就是练习的意思。” )这一年,汉朝废除三公官职,设置丞相、御史大夫。夏六月,曹操被任命为丞相。(《献帝起居注》记载,汉献帝派太常徐璆前往授予曹操印绶。御史大夫不再兼任中丞,设置长史一人。《先贤行状》记载:徐璆字孟玉,是广陵人。他年轻时品行高洁,在朝堂上刚正不阿。他先后担任过任城、汝南、东海三郡的太守,所到之处,教化大行。后来他被朝廷征召,在返回途中被袁术劫持。袁术称帝后,想要授予他上公之位,徐璆始终不屈从。袁术死后,徐璆得到袁术的玉玺,将其送回汉朝,被任命为卫尉、太常。曹操担任丞相时,曾想把这个职位让给徐璆。 )