한성, 곧 오늘날의 서울은 천험(天險)의 요새에 자리 잡았다. 한성은 내사산(內四山)을 성벽으로 이어 조성한 성곽도시다. 북쪽의 북악산(342m), 동쪽의 낙산(125m), 서쪽의 인왕산(338m), 남쪽의 남산(265m)이 사방을 가로막고 있다. 그 외곽으로는 다시 북쪽의 북한산(836m), 동쪽의 용마산(348m), 서쪽의 덕양산(행주산·125m), 남쪽의 관악산(829m) 등 외사산이 에워싸고 있다. 풍수지리적 개념으로 이해되기도 하지만, 막 출범한 나라의 수도라면 당연히 방어의 효율성에 초점을 맞춰 입지를 선택했을 것이다. 한성이 해자 없는 도시라는 시각은 지나치게 미시적인 관점이다. 내사산을 수도를 이루는 성벽의 거대한 하부구조로 활용하고 외사산을 외곽 방어망으로 활용한 그들이다. 지도를 펼쳐놓고 보면 그들의 의도는 너무나도 명확하다. 북쪽으로는 임진강, 남쪽으로는 한강을 한성의 해자로 삼은 것이다. 자연적인 조건이 충분히 구비되어 있는데 해자와 같은 인공 장애물을 설치할 이유는 없다. 이성계를 옹립한 혁명 주체 세력의 한 사람인 양촌 권근(1352~1409)이 한성을 두고 “하늘이 만들어 준 견고한 성지(城地)”라 한 것은 과장이 아니다.
한성이자 서울은 천험의 요새에 내에 있으며 성곽도시이기도 하다. 새로 출범한 나라의 수도를 방어에 효율성에 중점을 두기 때문에, 외사산을 외곽 방어망으로 활용했다. 물론 북쪽의 임진강, 남쪽의 한강을 한성의 해자로 삼았기 때문에 인공 장애물을 설치할 필요가 없었다.