自从战国中期以来,为燕、赵、秦三国北方边患的有两个游牧民族,东胡和匈奴——总名为胡。东胡出没于今河北的北边和辽宁、热河一带,受它寇略的是燕、赵。匈奴出没于今察哈尔、绥远和山西、陕、甘的北边一带,燕、赵、秦并受他寇略。这两个民族,各包涵若干散漫的部落,还没有统一的政治组织。它们在战国中期以前的历史十分茫昧。它们和春秋时代各种各色的戎狄似是同族类,但是否这些戎狄中某部分的后身和各种戎狄间的亲谊是怎样,现在都无从稽考了。现在所知道秦以前的胡夏的关系史只有三个攘胡的人物的活动。第一个是和楚怀王同时的赵武灵王。他首先采用胡人的特长,来制胡人。首先脱却长裙拖地的国装,而穿上短衣露袴的胡服,以便学习骑战。他领着新练的劲旅,向沿边的匈奴部落进攻,把国土向西北拓展。在新边界上,筑了一道长城,从察哈尔的蔚县东北代至河套的西北角外高阙;并且沿边设了代、雁门和云中三郡。第二个攘胡的英雄是秦舞阳随荆轲入秦的副使的祖父秦开。他曾被“质”在东胡,胡人很信任他。归燕国后,他率兵袭击东胡,把他们驱逐到一千多里外。这时大约是乐毅破齐前后。接着燕国也在新边界上筑一道长城,从察哈尔宣化东北造阳至辽宁辽阳县北襄平;并且沿边设了上谷、渔阳、右北平、辽西和辽东五郡。秦开破东胡后,约莫三四十年,赵有名将李牧,戍雁门、代郡以备胡。他经了长期敛兵坚守,养精蓄锐,然后乘着匈奴的骄气,突然出战,斩了匈奴十多万骑,此后十几年间,匈奴不敢走近赵边。
当燕、赵对秦作最后挣扎时,无暇顾及塞外。始皇初并六国忙着辑绥内部,也暂把边事抛开。因此胡人得到复兴的机会。旧时赵武灵王取自匈奴的河套一带,复归于匈奴。始皇三十二年,甚至听到“亡秦者胡”的谶语。于是始皇派蒙恬领兵三十万北征。不久把河套收复,并且进展至套外,始皇将新得的土地,设了九原郡。为谋北边的一劳永逸,始皇于三十三至三十四年间,又建设两件宏大的工程:其一是从河套外的九原郡治,筑了一条“直道”达到关内的云阳今陕西淳化县西北,从此至咸阳有泾、渭可通,长一千八百里;其二是把燕、赵北界的长城,和秦国旧有的西北边城,大加修葺,并且把它们连接起来,傍山险,填溪谷,西起陇西郡的临洮今甘肃岷县境,东迄辽东郡的碣石在渤海岸朝鲜境,筑成了举世闻名的“万里长城”。