NACS is primarily a hardware specification, although as
@smogne41 says, it implies (or maybe states outright, but my recollection is that it's a bit vague) that the CCS protocols (over PLC) should be used for communication, whereas Tesla uses a proprietary protocol over CAN bus. (Note that there are two levels of protocols in both cases: The CCS protocol is run over PLC, and Tesla's protocols are run over CAN bus. Think of PLC vs. CAN bus as being akin to written vs. spoken language medium, and CCS vs. Tesla's protocols being two different languages. That's an imperfect analogy, as all are, but it's a start.) This is probably at least part of the reason why Tesla's agreements with Ford and GM open "over 12,000" Supercharger stalls to these automakers, whereas the
US DOE estimates that Tesla has 21,182 Supercharger stalls; Tesla is opening only V3 Superchargers, which have the hardware and software to communicate via the CCS protocols that Ford and GM cars can already use, whereas older V2 Superchargers (presumably) lack that capability.
From a technical perspective, there's no reason that a third-party charging equipment provider couldn't implement Tesla's own CAN bus-based protocol over the NACS plug. (Some people would say it's no longer NACS if that was done, but I don't want to argue that semantic point.) Many of these charging stations already support the low-level CAN bus protocol, since CHAdeMO also uses CAN bus, although I don't know if such charging stations are designed to support both CAN bus and PLC over the same cables. Assuming that's not an issue, the problem with doing this is that Tesla has not, to the best of my knowledge, opened the details of how their CAN bus communications work. If Tesla and third-party charging networks wanted to cooperate, though, they could do so. Whether it would be worth the effort is debatable, with large chunks of uncertainty thrown in for a public debate, since we in the general public don't know enough about Tesla's protocol, and detailed knowledge of DC fast charger design is pretty esoteric, too.
Note that the language used (CAN bus/Tesla and PLC/CCS protocol) was developed along with the connector type (NACS and CCS1), but they aren't really wed to them. Both NACS and CCS1 have five physical pins. (At least, on the fast charger side; on the car side, CCS1 has seven pins, two of which are not used for DC fast charging.) It's possible to run the CCS protocol over a NACS plug, despite the fact that the CCS protocol was intended to be run over a CCS1 or CCS2 plug. That's what Tesla's CCS1-to-NACS adapter does; it just connects the CCS1 pins to their NACS equivalents. That's also why older Teslas can't use this adapter without a controller update; earlier Teslas couldn't use PLC over their charge ports because they lacked the right chips to do so. Newer Teslas, or those with the CCS upgrade hardware, can use either CAN bus or PLC over their charge ports. The fact that the adapter works, though, demonstrates that it would be fairly straightforward for third-party charging providers to fit NACS plugs on their charging stations and charge Teslas that are CCS-aware; they just need to run the CCS protocol over the NACS plug, as in fact the NACS specification suggests. Because this is the path that we
know poses no significant technical or legal challenges, it's what most people are assuming will happen, if and when third-party charging providers install NACS plugs.