决心废除原来的太子申生，改立骊姬所生的奚齐。于是令太子申生驻守曲沃，攻打山东之戎；又派另两个儿子重耳与夷吾分别驻守蒲城（今河北永清）和屈（今山西吉县）。此举一方面是为清除对骊姬之子的威胁，另一方面也是让他们防御戎狄的攻势。晋国没有参加齐桓公发起的“尊王攘夷”活动，而是独自灭掉了同处汾水流域的耿（今山西河津）、霍（今山西霍州）与魏（山西芮城），并将耿和魏分别封给大夫赵夙和毕万。晋献公十九年（前658年）和献公二十二年（前655年），献公又令荀息借道虞国灭掉了虢国。随后，虞也被灭。虞虢之地的西方是戎狄活动的