1271년(원종 12)에 수로방호사(水路防護使)가 되어 경상도를 지켰다. 1274년(충렬왕 즉위년) 여몽연합군의 제1차 일본정벌 때 도독사 김방경(金方慶) 휘하에서 중군(中軍)의 지병마사(知兵馬事)로 참전하였다.
이 때 이키섬[壹岐島]을 거쳐 북구주(北九州)를 치다가 태풍을 만나 배가 많이 부서져 되돌아왔으나, 그 공으로 상장군이 되었으며 원나라로부터 무덕장군 관군천호(武德將軍管軍千戶)의 벼슬을 받았다.
1281년의 제2차 일본정벌에도 참전하여 이키섬을 거쳐 북구주에 이르러 300여 급의 목을 베어 기세를 떨쳤으나, 원나라 군대의 거듭되는 패전과 강남군(江南軍)이 태풍을 만나 거의 익사하는 바람에 이기지 못하고 돌아왔다.
1287년에 부지밀직사사(副知密直司事)가 되었고, 그해 좌익만호(左翼萬戶)를 거쳐 판삼사사(判三司事)가 되었다. 1288년에 동북면병마사가 되었고, 이듬해 경상전라도도순문사(慶尙全羅道都巡問使)가 된 뒤 성절사(聖節使)로 원나라에 다녀오기도 하였다.
1290년에 합단적(哈丹賊: 원나라의 반란군)이 철령을 넘어와 원주·충주·연기 등지를 유린할 때 좌군만호(左軍萬戶)로서 이천(伊川) 등지에서 적을 무찔러 공을 세웠다.