How did BBSes allow multiple users to dial in at once?
ISP's that supplied dial-up back then just had banks of telephone lines and modems so that multiple users could dial in simultaneously.
There was most certainly a limit on number of callers (= number of modems and lines they had). I do recall getting up early on weekend mornings with my repeat dialer and let it run until it connected.
Very simple and low grade technology but it worked.
Reference: https://en.wikipedia.org/wiki/Internex_Online
That was the dial-up system I used in the later 1980's
The the 80's you could implement roll-down lines with either your phone company, or install a local PBX in your building that also did roll-down. So, if the primary line was busy, the next number or extension on a PBX would ring.
Then it was a matter of multiple machine hardware (Computer, Modem, etc) - you could do one environment per phone number. Eventually things evolved to allow for multiple phone lines/modems to a single computer if the BBS software was self-multitasking... or,
There were time-slicing solutions like Desqview, DoubleDOS, PC/MOS, etc. (again all of these solutions were pre-Windows 95/NT.) and eventually some of us (Sysops and BBS Authors) started migrating our software to Windows and Linux - to cut-down the cost of all the hardware, and run multiple "nodes" on a single computer.
(*) Note for those who care, there are some of us (BBS Authors) who are still actively developing solutions for the BBS community ... I am doing the rewrite of ProBoard BBS, still keeping a 16/Bit DOS build on the to-do list, along with support for native TCP/IP based solutions. An FYI, the 16/Bit DOS builds work with tricks like DOSBox (which allows us to set serial ports as Virtual modems, and allow DOSBox to do the COMPORT<->TCP proxy for us. And another solution is NetSerial and/or Net2BBS from pcmicro.com - Mike is active in helping people convert their modern Windows systems to work with older BBS applications.