NAT и DHCP являются полностью независимыми технологиями, которые вообще не зависят друг от друга.
Первая концепция, которую нужно понять, - это один из сегментов сети - слегка упрощенный, все IP-адреса в одном диапазоне IP-адресов находятся в одном сегменте. Сервер DHCP прослушивает в заданном сегменте запросы на IP-адрес и предлагает его при запросе. DHCP-сервер должен прослушивать тот же интерфейс, к которому подключен сегмент - таким образом он может работать на компьютере с одной сетевой картой или на маршрутизаторе (в домашней сети он обычно работает на маршрутизаторе, обслуживая адреса на Сеть LAN).
На типичном домашнем маршрутизаторе NAT запускается через интерфейс WAN и связывает пакеты, покидающие сеть, с внешним IP-адресом. Он содержит таблицу перевода, поэтому он знает, какая внутренняя машина запрашивала что. Таким образом, можно использовать один реальный IP-адрес для нескольких рабочих станций.
Ваш вопрос "когда я соединяю два разных компьютера, они оба получают разные внешние IP-адреса. Как это может случиться? Разве мой маршрутизатор не должен быть NAT, поскольку он защищает мой локальный IP-адрес?"представляет что-то вроде кривая Ответ - да, в домашней сети любые устройства за NAT обычно используют один внешний IP-адрес.
Есть несколько возможностей, почему вы получаете разные IP-адреса, в том числе -
Ваш провайдер использует Carrier Grade NAT и фактически выполняет двойной нат. Операторского уровня NAT требует использования более 1 IP-адреса, поэтому может быть так, что разным сеансам TCP назначаются разные IP-адреса.
Возможно, вы вообще не используете NAT, и ваш провайдер предоставляет вам подсеть IP-адресов, которые реально маршрутизируются. Это может показаться несколько маловероятным в домашней обстановке (и на самом деле это может иметь последствия для безопасности), но не редкость, если его запрашивают в бизнес-аккаунтах.
Возможно, ваш маршрутизатор имеет более 1 реального IP-адреса и выполняет более сложный NATTING (аналогично NAT операторского уровня), чтобы преодолеть некоторые ограничения NAT.