，司马越的支持者范阳王司马虓（不是八王之一）镇守许昌，推荐刘琨为司马。司马越派刘琨的父亲刘蕃为淮北护军、豫州刺史。河间王司马颙手下刘乔攻击司马虓，刘琨援救不及，其父母被刘乔俘获。刘琨说服其连襟温憺的兄长冀州刺史温羡让位给司马虓。光熙元年（306年）从王浚处求得八百骑兵，战败刘乔，救出父母。刘琨助司马腾击败、斩成都王司马颖（司马颙的联军）手下大将石超，降司马颙手下荥阳守将吕朗、助司马越、司马虓连败司马颙、司马颖，被封广武侯、邑二千户。
征战并州.司马颖旧将公师藩和汲桑在北方以为司