고구려 멸망 후 사민된 대조영 집단은 당의 영주(營州: 朝陽) 성방(城傍)에 소속되어 있었다. 성방이란 이민족으로 구성된 반전문적 군사집단을 당의 통치 하에 편제한 것이다. 성방 구성원의 대부분은 유목민이었는데, 당은 그들의 군사력을 이용하기 위해 원래의 부락조직을 그대로 유지시켰다.
696년 거란족이 당에 대해 반란을 일으켰다. 거란의 반란군과 동조할 것을 우려한 당 조정은 영주 성방의 이민족 집단을 유주(幽州: 北京)로 이거시켰다. 하지만 대조영은 여기에 따르지 않았다.
같은 해 9월 직후 거란군과 당군이 공방을 벌이는 사이 대조영 집단은 말갈족 걸사비우(乞四比羽) 집단과 함께 동쪽으로 달아나 요동의 옛 고구려 땅에서 세력을 키웠다. 당 조정은 거란족의 반란을 진압한 후 대조영과 걸사비우를 회유하기 위해 대조영의 아버지인 걸걸중상(乞乞仲象)을 진국공(震國公), 걸사비우를 허국공(許國公)에 봉하였다. 당 왕조의 국공(國公)은 군왕(郡王)에 이은 세 번째 등급으로 신하가 받을 수 있는 최고의 작위였다. 이는 대조영 집단이 요동에서 상당한 세력을 형성하였음을 말한다. 대조영 집단의 세력을 진압하기 위해 당이 거란군대를 파견함으로써 천문령전투가 발발하였다.
696년 당으로부터 이탈한 대조영 집단은 요동에 자리를 잡았다. 당 조정의 회유에도 불구하고 독자적인 행보의 의지를 명확히 하였다. 그러자 당은 항복한 거란의 장수 이해고(李楷固)를 토벌군 장수로 삼아 공격해왔다. 당군의 공격을 받은 대조영과 걸사비우 집단은 크게 타격을 입어 대조영의 아버지 걸걸중상과 걸사비우가 전사하기까지 했다. 어려운 상황에서 대조영은 고구려유민의 지도자가 되었고, 후퇴를 하면서 전투를 계속했다.
대조영 휘하 집단은 당군의 추격을 피해 송화강 지류인 휘발하(輝發河)와 혼하(渾河)의 분수령인 천문령에 진을 쳤다. 이 소식을 전해들은 고구려인들과 말갈인들이 대조영에게 동조하였다. 천문령 부근에 사는 사람들의 협조와 군사적 지원은 궤멸 직전의 대조영 집단에 활력을 불어넣었다. 과거 고구려 영토로 깊숙이 들어온 이해고와 그의 거란 기병은 천문령의 결전에서 대조영이 지휘하는 고구려유민과 말갈인에게 크게 패배했다.
당군이 물러간 후 거란과 해(奚)가 돌궐(突厥)에 복속되었다. 그 결과 당이 대조영 집단을 공격할 수 있는 길이 막혔다. 그 사이에 대조영은 더욱 동쪽으로 이동하여 읍루(挹婁)의 옛 땅을 차지하고 오늘날의 길림성 돈화시에 있는 성산자산성(城山子山城)으로 비정되는 동모산(東牟山)에 축성하고 근거지로 삼았다. 그러자 말갈인들과 고구려인들이 지속적으로 모여들었다. 이를 발판으로 697년 대조영은 동모산에서 나라를 세우고 국호를 진국(震國)이라 하였다.
대조영 집단이 천문령전투에서 당군을 격파함으로써 요동에 있는 고구려유민과 말갈인들이 당의 속박에서 벗어나게 되었다. 아울러 이 전투의 승리로 인해 대조영 집단을 중심으로 많은 고구려유민이 결속되었으며 발해 건국의 초석이 마련되었다.