둘 다 맞습니다. '피난'과 '피란'이 뒤섞여 쓰이는 것을 볼 수 있는데 이는 거의 같은 뜻으로 모두 맞는 말입니다. '피난'은 '避難'으로서 사전상으로는 '재난을 피함'이라는 뜻이고, '피란'은 '避亂'으로서 '난리를 피함'이라는 뜻입니다. 난리는 대체로 전쟁 따위를 가리키므로 '피란'은 전쟁을 피해 길을 떠나는 상황에 어울리는 용어입니다. 또 전쟁은 재난의 일종이기도 하므로 '피난' 역시 이 경우 적절한 말입니다.
그런데 작은 규모의 재난을 난리라고 하지는 않으므로 그 경우에는 '피난'이 어울리지 '피란'은 적절하지 않습니다. 이러한 약간의 의미 차이로 인해 합성어들에서 차이를 보이기도 합니다.
예를 들어, '피난민/피란민, 피난살이/피란살이, 피난처/피란처' 등이 모두 있는 말인 것과 달리, '피난소, 피난항'은 있지만 '*피란소, *피란항'은 없는 말입니다. '피난소'는 통상, 예를 들어 산 따위에서 비바람을 피해 피신하는 '작은 장소' 따위를 가리키고, '피난항' 역시 악천후를 피해 배가 들어오는 '항구'를 가리키는데, 둘 다 보편적인 세상살이에 비추어 볼 때 '난리'를 피해 모이는 곳이라는 의미를 갖기에는 적절한 장소나 상황이 아니기 때문입니다. 이런 곳으로는 난리라고는 할 수 없는 어떤 재난을 피하는 경우가 보통이어서 '피난소, 피난항'이라는 어휘들만 만들어지게 된 것입니다. 이 점에서 '피난'이 '피란'보다 다소 의미의 영역이 크다고 할 것입니다. 한편 '피란'의 경우 '난을 피하다' 따위에서 보듯 국어의 단어 '난'에 접두사 '피-'가 결합한 것으로 보아 '피난'으로 적어야 한다고 주장할지도 모릅니다.
그러나 이는 '피뢰(避雷), 피서(避署), 피한(避寒)' 등과 마찬가지로 '避'와 '亂'이 국어의 접두사와 명사가 아닌 한문의 한 성분으로서 조어에 참여한 것으로 보아야 하므로 본음대로 '피란'으로 적는 것이 옳습니다.
출처: 국립국어원