나진만(羅津灣)의 면적은 약 5㎢이다. 만(灣)의 입구에 가로놓인 대초도(大草島)·소초도(小草島)의 두 섬이 천연의 방파제를 형성하여 양항(良港)으로서의 조건을 구비하고 있다.
나진시 주변은 수처봉(秀處峰, 357m)·서하대봉(437m)·관곡령(貫谷嶺)·광대덕(廣臺德, 638m) 등 500m 전후의 산지로 둘러싸여 있다. 그 북쪽은 산지 지역이 분수령을 이루며 지경천(地境川)이 남쪽으로 흘러 시가지를 거쳐 나진만으로 들어가고, 분수령 북쪽으로는 방산천(方山川)이 흘러 두만강에 합류한다.
나진시의 시가지는 지경천의 충적지에 형성되어 있고, 북위 42°30′에 위치하고 있다. 그러나 바다에 접하고 산지로 둘러싸인 지형적인 특성 때문에 위도에 비하여 비교적 온화한 편이다.
나진항은 1932년 축항공사(築港工事)로 인하여 급격한 발전을 하였다. 이후 1936년에 부가 되고 광복 후에 시로 승격되었다. 특히 이곳은 함경북도와 북만주의 관문으로 운수보관업이 성하고, 조선공업 및 수산 공업의 중심지이며 군사 요지로 잘 알려져 있다.