城下之盟(성하지맹)
◎글자풀이: 성 성(城), 아래 하(下), 갈 지(之), 맹세할 맹(盟)
◎뜻풀이: 적군이 성 밑까지 쳐들어와 항복하고 체결하는 협약이라는 뜻이다.
◎유래:
춘추(春秋)시기 초(楚)나라 군주 장왕(莊王)은 대부 신주(申舟)를 제나라로 파견하였는데 제나라로 가려면 송나라를 거쳐야 했다. 제후국의 사신이 다른 나라를 통과하게 될 경우 먼저 '가도(假道)' 즉 '길을 통과한다'는 뜻을 밝히는 것이 예의였으나 송나라를 얕잡아 봤던 초장왕은 '가도'의 인사를 하지 말 것을 신주에게 당부했다. 신주는 과거 싸움에서 송나라의 미움을 샀던 적이 있었던 터라 만약 이번 사건으로 또 한번 책잡히게 되면 목숨을 잃을까 몹시 두려워했다.
그러자 초장왕은 신주를 죽이면 송나라를 공격할 것이라고 말하였다. 신주는 아들을 초장왕에게 맡긴 후 길을 떠났다.
그가 송나라에 이르자 과연 송나라 사람이 길을 막았다. 송나라의 대신들은 초나라의 이런 무례한 행위에 격분하여 신주를 죽여버렸다.
기원전 595년, 초나라는 송나라를 공격하고 도성을 포위했다. 송나라는 진나라에 이 사실을 알려 지원군을 부탁했지만 초나라와의 정면충돌을 피하고 싶었던 진나라 군주는 지원군을 보내지 않았다. 그럼에도 송나라가 초나라에 넘어가는 것을 두고만 볼 수 없어 해양(解揚)이라는 사신을 보내 진나라의 병사들이 곧 구원하러 오니 초나라에 항복하지 말고 조금만 버티라고 전하게 했다.
그러나 해양은 뜻밖에도 포로로 잡혀 초나라에 보내졌다. 초장왕은 해양에게 뇌물을 주면서 말을 뒤집도록 회유하였다. 송나라를 설득하여 항복하게 하려는 심산이었다. 해양은 겉으로는 그러마 하고 대답했지만 그렇게 하지 않았다.
다음날 해양을 누거(樓車:망루를 설치한 수레)에 올려놓고 병사들을 향해 구원군이 오지 않을 것이라고 외치게 했다. 그러나 해양은 오히려 절대 투항하지 말고 진군이 곧 올테니 조금만 버티라고 전했다.
화가 치밀어 오른 초왕이 해양을 죽이려 하자 해양이 말했다.
"진나라 군주의 명을 따르고 복종한 것뿐입니다. 지금 죽는다고 해도 여한이 없습니다." 이에 초왕은 군주에 대한 해양의 충성심을 높이 사 그를 풀어주고 병사를 철수시켰다. 그후로도 초나라와 송나라의 전투는 계속되었다.
훗날 송나라가 어려워지자 화원(華元)이라는 대신을 파견해 초군의 진영에 몰래 잠입시켰다. 화원은 초나라 장군 자반(子反)을 만나 부탁했다.
"우리 군주께서 저를 파견하여 송나라의 현재 가난한 상황을 말씀드리라 하였습니다. 송나라의 백성들은 이미 자식을 양식과 바꾸어 먹고 풀뿌리와 나무껍질로 연명하는 지경에 이르렀습니다. 나라가 쓰러져 간다고 해도 치욕적인 성하지맹(城下之盟)만은 맺지 않으려 합니다. 만약 초군이 30리만 물러가 준다면 그 어떤 조건이라도 받아들이겠습니다."
초군은 그 말대로 30리 밖으로 물러났다. 화원은 초나라에 인질로 잡혔고 따라서 초나라와 송나라 양국은 동맹을 맺게 되었다.
이 이야기는 <좌전 선공 15년(左傳 宣公十五年>에 수록되어 있다. 성하지맹은 적군 병력이 성에까지 다다라서 물러날 곳 없게 될 때 적군과 동맹을 맺는 것을 말한다. 즉 핍박으로 어쩔 수 없이 협약을 맺는 것을 이르는 말이다.