今甘肅永登東南)。八月,廣武人捉拿張大豫獻給呂光,呂光將其斬首於姑臧(今甘肅武威)。
十二月,呂光部下徐炅與張掖(今屬甘肅)太守彭晃謀叛,西平太守康寧殺湟河太守強禧,反叛呂光,自稱匈奴王。王穆則襲據酒泉(今屬甘肅),自稱大將軍、涼州牧。康、徐、彭、王遙相呼應反呂光。呂光趁叛將尚未連兵之際,迅速出兵擊敗徐炅,徐炅投奔彭晃處。彭晃乘機擴張,東結康寧,西通王穆,對呂光形成很大威脅。
呂光與諸將商討對策,諸將認為:“今康寧在南,阻兵伺隙,若大駕西行,寧必乘虛出於嶺左。晃、穆未平,康寧復至,進退狼狽,勢必大危。”呂光統籌全域性,堅持己見地說:“事勢實如卿言。今而不往,尋坐待其來。晃、穆共相唇齒,寧又同惡相救,東西交至,城外非吾之有,若是,大事去矣。今晃叛逆始爾,寧、穆與之情契未密,及其倉卒,取之為易。且隆替命也,卿勿復言”(《晉書·呂光載記》)。
呂光親率3萬步騎兼程急行,進圍張掖,攻之二旬,彭晃部將寇頗大開城門投降,放進呂光,遂誅彭晃。在呂光的迅猛進攻下,王穆內部發生內訌,王穆發兵攻打其部將索嘏駐防的敦煌(今甘肅敦煌西)。呂光聞訊大喜,對諸將說: