吕布趁曹操在徐州作战时偷袭曹操后方,曹操只剩下三座城194年八月,曹操率军进攻濮阳,陈兵于野。吕布出兵迎战,曹军不利,退兵三十。曹与众谋,趁吕布得胜易娇,夜袭濮阳西塞,恰吕布有防,曹军屡被围截,幸有乐进、典韦拼命冲杀,才得脱围。吕布与陈宫谋,以诈降作内应,引曹如城。曹操果中其计,率兵杀入城来,未至郡府,只听炮声一响,喊杀声如番江倒海。曹操知中计,直走北门,被截杀,复转北门,曹操败回营中,将计就计,许称曹操被烧伤身亡,全军挂孝发丧,埋伏军营四周,引吕布来战。吕布果然率军杀来,被伏军团团围住,吕布死战得脱,逃回濮阳城中。是年秋,蝗虫忽起,东郡斗米五十贯,两军粮绝,暂且罢兵。195年春,曹操重振旗鼓,收复兖州失地,杀死吕布战半李封,薛兰,接着进攻濮阳。吕布出城迎战,曹军六将共战吕布,吕布不能支,拨马回城。这时东郡兖州尽归曹有,朝廷正式任曹操为兖州牧。