西南夷的君长多到数以十计,其中夜郎是势力最大的;它的西边靡莫夷人也多到数以十计,其中滇的势力最大;从滇往北,那里的君长也多到数以十计,其中邛都夷人的势力最大:这些地方的人都把头发梳成椎形的髻,耕种田地,有小城镇和村落。他们的外边,西面从同师往东,直到北边的楪榆,称为巂和昆明,这地方的人都结发为辫,随着牲畜而迁徙,没有固定的住处,没有君长,土地纵横大约有几千里。从巂往东北,那里的君长也多到数以十计,其中徙和筰都的势力最大。从筰都往东北,那里的君长也多到数以十计,其中冉駹的势力最大。他们的风俗有的定居,有的迁移不定,都在蜀郡的西边。从冉駹往东北,那里的君长多到数以十计,其中白马的势力最大,都是氐族的同类。这些都是巴郡、蜀郡西南以外的蛮夷。
起初楚威王的时候,派将军庄蹻率兵沿长江而上,攻占了巴郡、黔中郡以西的地方。庄蹻是以前的楚庄王的后代。庄蹻到了滇池,那里纵横三百里,附近是平坦的土地,肥沃富饶的地方有几千里,庄蹻凭借军队的威势平定了那里,使它隶属楚国。庄蹻正想回来报告楚王,适逢秦国攻取了楚国巴郡、黔中郡,道路阻塞,无法通行,于是庄蹻返回滇池,凭借他的军队在滇称王,改变服饰,随从当地的风俗,做了当地的长帅。秦朝时常頞大略开通了五尺道,这些国家就稍微设置一些官吏了。十几年后,秦朝灭亡。待到汉朝建立,把这些国家都抛弃了,而把蜀郡原来的边界当作关塞。巴郡、蜀郡百姓中有的人暗中出塞做买卖,换取那里筰国的马、僰国的僮仆和牦牛,因此巴郡、蜀郡人口繁多,生活富裕。
建元六年,大行王恢攻打东越,东越人杀死了东越王郢而向汉朝报告。王恢乘着军事威势派番阳令唐蒙委婉地告知南越汉朝出兵的意图。南越拿蜀地的枸酱给唐蒙吃,唐蒙问这是从哪里得来的,南越人说:“由西北边的羟柯江而来的,羟柯江宽有几里,流经番禺城下。”唐蒙回到长安,询问蜀地的商人,商人说:“只有蜀郡出产枸酱,很多人偷偷拿着出去和夜郎做交易。夜郎靠近羟柯江,江宽有一百多步,足够来行船。南越用财物使夜郎归附自己,势力向西到达了同师,可是也没能像对待臣国那样使唤夜郎。”唐蒙于是上书劝皇上说:“南越王乘坐着黄盖左纛的车子,土地东西有一万多里,名义上是外臣,实际上是一州的君主。如今从长沙、豫章前去,水路多数断绝,难以前行。我私下听说夜郎所拥有的精兵,可能有十多万,乘船从羟柯江而下,乘它不注意,这是制服南越的一条奇计。如果凭着汉朝的强大,巴郡、蜀郡的富饶,开通前往夜郎的道路,给那里设置官吏,十分容易。”皇上听取了这个建议。于是任命唐蒙做郎中将,率领一千人,以及携带粮食辎重的一万多人,从巴蜀筰关进入夜郎,会见了夜郎侯多同。唐蒙给他很优厚的赏赐,用汉王朝的威势和恩德来晓谕他,约定给他们设置官吏,让他的儿子任县令。夜郎附近的小国都贪图汉朝的丝织品,认为通往汉朝的道路艰险,终究不能占为己有,就暂且接受了唐蒙的盟约。唐蒙回到汉朝报告,于是把夜郎设为犍为郡。调派巴郡、蜀郡的士兵修整道路,从羟直修路到羟柯江。蜀郡人司马相如也说西夷的邛、筰可以设置郡。皇上派司马相如以郎中将的身份前往那里晓谕,将他们都如同南夷一样对待,给他们设置了一个都尉、十几个县,归属于蜀郡。
正当这个时候,巴、蜀、汉中、广汉四个郡开通了西南夷的道路,辗转运送军粮。几年后,道路不通,士兵疲乏饥饿,遭受潮湿,死了很多人。西南夷又多次反叛,派兵发动攻击,消耗费用,却没有成效。皇上忧虑这件事,派公孙弘前去那里察看了解。公孙弘回来报告,说这件事对国家不利。待到公孙弘任御史大夫,朝廷正在组织人修筑朔方城,来据守黄河驱逐匈奴,公孙弘趁机多次述说开通西南夷的害处,认为可以暂且停止,集中精力对付匈奴。皇上停止了西南夷开通的事,只在南夷夜郎设置两个县和一个都尉,让犍为郡自己保全并逐渐完善它的郡县体制。
到了元狩元年,博望侯张骞出使大夏归来,说他在大夏时看到蜀地出产的细布和邛莱山出产的竹杖,让人去问这些东西是从哪里来的,回答说:“从东南方的身毒国来的,它离这里大约有几千里远,能够和蜀地的商人做买卖。”又听说邛莱山西边大约二千里有身毒国。张骞乘机大说大夏在汉朝的西南,羡慕中国,担心匈奴阻隔了他们和中国的通路,如果能够开通蜀地的道路,取道身毒国既方便又近,对汉朝有利无害。于是天子就命令王然于、柏始昌、吕越人等人,让他们打探捷径,从西夷的西边出发,想寻找身毒国。他们到了滇国,滇王尝羌就留下他们,派了十多批人为他们寻找向西去的道路。一年多后,道路全都被昆明夷阻断,没有人能通往身毒国。
滇王和汉朝使者谈话说:“汉朝和我们滇国相比哪个大?”到了夜郎,夜郎侯也是这样问。因为道路不通的缘故,各自以为自己是一州之主,不知道汉朝的辽阔。使者回来后,于是大谈滇是个大国,值得让他们亲近和归附汉朝,天子对这事专心留意。
等到南越造反,皇上派驰义侯通过犍为郡的名义调发南夷军队。且兰君害怕行军遥远,附近的国家会乘机掳走自己老弱的百姓,于是和他的军队反叛了,杀死了汉朝使者和犍为太守。汉朝于是调派曾经攻打南越的八位校尉,率领巴郡和蜀郡被赦罪从军的犯人,去进攻打败了且兰。适逢南越已经被攻破,汉朝八位校尉还未沿羟柯江而下,就带兵撤回,在行军中讨伐了头兰。头兰是经常阻断滇国和汉朝通路的国家。平定了头兰后,于是就平定了南夷,设置了羟柯郡。夜郎侯起初倚恃南越,南越灭亡后,正碰上汉朝军队回来诛杀反叛的人,夜郎于是入京朝见天子。皇上封他为夜郎王。
南越被攻破,以及汉朝诛杀了且兰、邛君,并且杀了筰侯,冉、駹都震惊恐慌,便向汉朝请求称臣,为他们设置官吏。于是汉朝将邛都设为越巂郡,筰都设为沈犁郡,冉、駹设为汶山郡,广汉西边的白马设为武都郡。
皇上派王然于利用南越破败以及诛杀南夷的兵威委婉地告知滇王入京朝见天子。滇王的军队有几万人,滇国附近东北边有劳寝、靡莫,都和滇王同姓,相互依仗,不肯听从劝告。劳寝、靡莫多次触犯汉朝使者和官兵。元封二年,天子调发巴郡、蜀郡的军队进攻并消灭了劳寝、靡莫,大军逼近滇国。滇王当初对汉朝本有善意,因此没有诛杀滇王。滇王离开西南夷,全国向汉朝投降,请求为他们设置官吏,并入京朝见天子。于是汉朝将滇国设为益州郡,赐给滇王王印,依旧统治他的人民。
西南夷的君长数以百计,只有夜郎、滇的君长接受了王印。滇是个小国,最受汉朝宠爱。
太史公说:楚国的祖先难道有上天赐予的禄位么?在周的时候做过文王的师傅,被封于楚。待到周朝衰落,楚国土地号称方圆五千里。秦国灭亡诸侯,只有楚国的后代还有滇王。汉朝讨伐西南夷,那里的国家大多灭亡了,只有滇王仍旧是汉朝宠爱的王。可是平定南夷的开端,是在番禺见到了枸酱,在大夏见到了邛竹杖。西夷后来被分割,分为西、南二方,最终被汉朝设为七个郡(犍为、羟柯、越辒、益州、武都、沈犁、汶山)。