На этот вопрос нет хорошего ответа, потому что вы задаете очень конкретный вопрос - для общего термина.
NAT — это подход, а не программа. Каждый маршрутизатор, реализующий NAT, может делать это по-разному. Деталь реализации.
Итак, универсального ответа нет.
Когда-то во IIRC можно было определить не только использование NAT, но и определенного производителя маршрутизатора (на основе таких деталей реализации), хотя это было ГОДЫ назад - тогда все наладилось.Серьезно, это требует анализа для каждого маршрутизатора и, возможно, различается даже между версиями прошивки на протяжении многих лет.
Да, и еще один - ваш пример плохой. Действительно плохо:
Допустим, я делаю серию DNS-запросов со своей машины на общедоступный сервер.
В любой настройке сети, которую я когда-либо видел, вы бы этого не сделали — ваша машина отправляла бы DNS-запрос к маршрутизатору, который также действует как локальный DNS-сервер. Любой запрос, который он не может выполнить, будет переадресован. Причина этого заключается в том, чтобы найти локальные активы, также зарегистрированные в DNS... о которых удаленный DNS не знает. В любом случае, используя эту (нормальную) настройку, NAT не будет задействован, поскольку любой внешний DNS-запрос действительно будет исходить от одного и того же устройства.