All ns-3 releases are archived: the short links below provide quick access to the source code, releases notes, and documentation of every past release:

ns-3.40 (September 2023)
ns-3.39 (July 2023) ns-3.38 (March 2023) ns-3.37 (November 2022)
ns-3.36 (April 2022) ns-3.35 (October 2021) ns-3.34 (July 2021)
ns-3.33 (January 2021) ns-3.32 (October 2020) ns-3.31 (June 2020)
ns-3.30 (August 2019) ns-3.29 (September 2018) ns-3.28 (March 2018)
ns-3.27 (October 2017) ns-3.26 (October 2016) ns-3.25 (March 2016)
ns-3.24 (September 2015) ns-3.23 (May 2015) ns-3.22 (February 2015)
ns-3.21 (September 2014) ns-3.20 (June 2014) ns-3.19 (December 2013)
ns-3.18 (August 2013) ns-3.17 (May 2013) ns-3.16 (December 2012)
ns-3.15 (August 2012) ns-3.14 (June 2012) ns-3.13 (December 2011)
ns-3.12 (August 2011) ns-3.11 (May 2011) ns-3.10 (January 2011)
ns-3.9 (August 2010) ns-3.8 (May 2010) ns-3.7 (January 2010)
ns-3.6 (October 2009) ns-3.5 (July 2009) ns-3.4 (April 2009)
ns-3.3 (December 2008) ns-3.2 (September 2008) ns-3.1 (July 2008)

The full directory of releases is available here.