MacOS would need syncookies to be a viable tcp server on public IPs, IMHO, but MacOS pulled FreeBSD's TCP stack a couple months before syncookies were added, and they never rebased or otherwise added syncookies later.
I haven't looked into if they pulled any scalability updates over the years, but I kind of assume they haven't, and the stack would have a lot of lock contention if you had more than say 10,000 tcp sockets.
Given that, if I were Apple compatible, I might run a mini as a LAN server, but my home servers provide services for the LAN as well as some public services (of limited value and usefulness, but still public).