Indonesia's second largest city, Surabaya, on Java, is a large port city with a genuine Indonesian flavor. The old section of the city has a historic mosque and a zoo, but most travelers only go there for the urban atmosphere or to visit Bromo-Tengger-Semeru National Park. 410 mi/660 km east of Jakarta.